<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<title>Preprocessing_modeling_refinements_evaluations</title>

<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>

<style type="text/css">
    /*!
*
* Twitter Bootstrap
*
*/
/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';
  src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot');
  src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
  content: "\002a";
}
.glyphicon-plus:before {
  content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}
.glyphicon-minus:before {
  content: "\2212";
}
.glyphicon-cloud:before {
  content: "\2601";
}
.glyphicon-envelope:before {
  content: "\2709";
}
.glyphicon-pencil:before {
  content: "\270f";
}
.glyphicon-glass:before {
  content: "\e001";
}
.glyphicon-music:before {
  content: "\e002";
}
.glyphicon-search:before {
  content: "\e003";
}
.glyphicon-heart:before {
  content: "\e005";
}
.glyphicon-star:before {
  content: "\e006";
}
.glyphicon-star-empty:before {
  content: "\e007";
}
.glyphicon-user:before {
  content: "\e008";
}
.glyphicon-film:before {
  content: "\e009";
}
.glyphicon-th-large:before {
  content: "\e010";
}
.glyphicon-th:before {
  content: "\e011";
}
.glyphicon-th-list:before {
  content: "\e012";
}
.glyphicon-ok:before {
  content: "\e013";
}
.glyphicon-remove:before {
  content: "\e014";
}
.glyphicon-zoom-in:before {
  content: "\e015";
}
.glyphicon-zoom-out:before {
  content: "\e016";
}
.glyphicon-off:before {
  content: "\e017";
}
.glyphicon-signal:before {
  content: "\e018";
}
.glyphicon-cog:before {
  content: "\e019";
}
.glyphicon-trash:before {
  content: "\e020";
}
.glyphicon-home:before {
  content: "\e021";
}
.glyphicon-file:before {
  content: "\e022";
}
.glyphicon-time:before {
  content: "\e023";
}
.glyphicon-road:before {
  content: "\e024";
}
.glyphicon-download-alt:before {
  content: "\e025";
}
.glyphicon-download:before {
  content: "\e026";
}
.glyphicon-upload:before {
  content: "\e027";
}
.glyphicon-inbox:before {
  content: "\e028";
}
.glyphicon-play-circle:before {
  content: "\e029";
}
.glyphicon-repeat:before {
  content: "\e030";
}
.glyphicon-refresh:before {
  content: "\e031";
}
.glyphicon-list-alt:before {
  content: "\e032";
}
.glyphicon-lock:before {
  content: "\e033";
}
.glyphicon-flag:before {
  content: "\e034";
}
.glyphicon-headphones:before {
  content: "\e035";
}
.glyphicon-volume-off:before {
  content: "\e036";
}
.glyphicon-volume-down:before {
  content: "\e037";
}
.glyphicon-volume-up:before {
  content: "\e038";
}
.glyphicon-qrcode:before {
  content: "\e039";
}
.glyphicon-barcode:before {
  content: "\e040";
}
.glyphicon-tag:before {
  content: "\e041";
}
.glyphicon-tags:before {
  content: "\e042";
}
.glyphicon-book:before {
  content: "\e043";
}
.glyphicon-bookmark:before {
  content: "\e044";
}
.glyphicon-print:before {
  content: "\e045";
}
.glyphicon-camera:before {
  content: "\e046";
}
.glyphicon-font:before {
  content: "\e047";
}
.glyphicon-bold:before {
  content: "\e048";
}
.glyphicon-italic:before {
  content: "\e049";
}
.glyphicon-text-height:before {
  content: "\e050";
}
.glyphicon-text-width:before {
  content: "\e051";
}
.glyphicon-align-left:before {
  content: "\e052";
}
.glyphicon-align-center:before {
  content: "\e053";
}
.glyphicon-align-right:before {
  content: "\e054";
}
.glyphicon-align-justify:before {
  content: "\e055";
}
.glyphicon-list:before {
  content: "\e056";
}
.glyphicon-indent-left:before {
  content: "\e057";
}
.glyphicon-indent-right:before {
  content: "\e058";
}
.glyphicon-facetime-video:before {
  content: "\e059";
}
.glyphicon-picture:before {
  content: "\e060";
}
.glyphicon-map-marker:before {
  content: "\e062";
}
.glyphicon-adjust:before {
  content: "\e063";
}
.glyphicon-tint:before {
  content: "\e064";
}
.glyphicon-edit:before {
  content: "\e065";
}
.glyphicon-share:before {
  content: "\e066";
}
.glyphicon-check:before {
  content: "\e067";
}
.glyphicon-move:before {
  content: "\e068";
}
.glyphicon-step-backward:before {
  content: "\e069";
}
.glyphicon-fast-backward:before {
  content: "\e070";
}
.glyphicon-backward:before {
  content: "\e071";
}
.glyphicon-play:before {
  content: "\e072";
}
.glyphicon-pause:before {
  content: "\e073";
}
.glyphicon-stop:before {
  content: "\e074";
}
.glyphicon-forward:before {
  content: "\e075";
}
.glyphicon-fast-forward:before {
  content: "\e076";
}
.glyphicon-step-forward:before {
  content: "\e077";
}
.glyphicon-eject:before {
  content: "\e078";
}
.glyphicon-chevron-left:before {
  content: "\e079";
}
.glyphicon-chevron-right:before {
  content: "\e080";
}
.glyphicon-plus-sign:before {
  content: "\e081";
}
.glyphicon-minus-sign:before {
  content: "\e082";
}
.glyphicon-remove-sign:before {
  content: "\e083";
}
.glyphicon-ok-sign:before {
  content: "\e084";
}
.glyphicon-question-sign:before {
  content: "\e085";
}
.glyphicon-info-sign:before {
  content: "\e086";
}
.glyphicon-screenshot:before {
  content: "\e087";
}
.glyphicon-remove-circle:before {
  content: "\e088";
}
.glyphicon-ok-circle:before {
  content: "\e089";
}
.glyphicon-ban-circle:before {
  content: "\e090";
}
.glyphicon-arrow-left:before {
  content: "\e091";
}
.glyphicon-arrow-right:before {
  content: "\e092";
}
.glyphicon-arrow-up:before {
  content: "\e093";
}
.glyphicon-arrow-down:before {
  content: "\e094";
}
.glyphicon-share-alt:before {
  content: "\e095";
}
.glyphicon-resize-full:before {
  content: "\e096";
}
.glyphicon-resize-small:before {
  content: "\e097";
}
.glyphicon-exclamation-sign:before {
  content: "\e101";
}
.glyphicon-gift:before {
  content: "\e102";
}
.glyphicon-leaf:before {
  content: "\e103";
}
.glyphicon-fire:before {
  content: "\e104";
}
.glyphicon-eye-open:before {
  content: "\e105";
}
.glyphicon-eye-close:before {
  content: "\e106";
}
.glyphicon-warning-sign:before {
  content: "\e107";
}
.glyphicon-plane:before {
  content: "\e108";
}
.glyphicon-calendar:before {
  content: "\e109";
}
.glyphicon-random:before {
  content: "\e110";
}
.glyphicon-comment:before {
  content: "\e111";
}
.glyphicon-magnet:before {
  content: "\e112";
}
.glyphicon-chevron-up:before {
  content: "\e113";
}
.glyphicon-chevron-down:before {
  content: "\e114";
}
.glyphicon-retweet:before {
  content: "\e115";
}
.glyphicon-shopping-cart:before {
  content: "\e116";
}
.glyphicon-folder-close:before {
  content: "\e117";
}
.glyphicon-folder-open:before {
  content: "\e118";
}
.glyphicon-resize-vertical:before {
  content: "\e119";
}
.glyphicon-resize-horizontal:before {
  content: "\e120";
}
.glyphicon-hdd:before {
  content: "\e121";
}
.glyphicon-bullhorn:before {
  content: "\e122";
}
.glyphicon-bell:before {
  content: "\e123";
}
.glyphicon-certificate:before {
  content: "\e124";
}
.glyphicon-thumbs-up:before {
  content: "\e125";
}
.glyphicon-thumbs-down:before {
  content: "\e126";
}
.glyphicon-hand-right:before {
  content: "\e127";
}
.glyphicon-hand-left:before {
  content: "\e128";
}
.glyphicon-hand-up:before {
  content: "\e129";
}
.glyphicon-hand-down:before {
  content: "\e130";
}
.glyphicon-circle-arrow-right:before {
  content: "\e131";
}
.glyphicon-circle-arrow-left:before {
  content: "\e132";
}
.glyphicon-circle-arrow-up:before {
  content: "\e133";
}
.glyphicon-circle-arrow-down:before {
  content: "\e134";
}
.glyphicon-globe:before {
  content: "\e135";
}
.glyphicon-wrench:before {
  content: "\e136";
}
.glyphicon-tasks:before {
  content: "\e137";
}
.glyphicon-filter:before {
  content: "\e138";
}
.glyphicon-briefcase:before {
  content: "\e139";
}
.glyphicon-fullscreen:before {
  content: "\e140";
}
.glyphicon-dashboard:before {
  content: "\e141";
}
.glyphicon-paperclip:before {
  content: "\e142";
}
.glyphicon-heart-empty:before {
  content: "\e143";
}
.glyphicon-link:before {
  content: "\e144";
}
.glyphicon-phone:before {
  content: "\e145";
}
.glyphicon-pushpin:before {
  content: "\e146";
}
.glyphicon-usd:before {
  content: "\e148";
}
.glyphicon-gbp:before {
  content: "\e149";
}
.glyphicon-sort:before {
  content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}
.glyphicon-sort-by-order:before {
  content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}
.glyphicon-sort-by-attributes:before {
  content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}
.glyphicon-unchecked:before {
  content: "\e157";
}
.glyphicon-expand:before {
  content: "\e158";
}
.glyphicon-collapse-down:before {
  content: "\e159";
}
.glyphicon-collapse-up:before {
  content: "\e160";
}
.glyphicon-log-in:before {
  content: "\e161";
}
.glyphicon-flash:before {
  content: "\e162";
}
.glyphicon-log-out:before {
  content: "\e163";
}
.glyphicon-new-window:before {
  content: "\e164";
}
.glyphicon-record:before {
  content: "\e165";
}
.glyphicon-save:before {
  content: "\e166";
}
.glyphicon-open:before {
  content: "\e167";
}
.glyphicon-saved:before {
  content: "\e168";
}
.glyphicon-import:before {
  content: "\e169";
}
.glyphicon-export:before {
  content: "\e170";
}
.glyphicon-send:before {
  content: "\e171";
}
.glyphicon-floppy-disk:before {
  content: "\e172";
}
.glyphicon-floppy-saved:before {
  content: "\e173";
}
.glyphicon-floppy-remove:before {
  content: "\e174";
}
.glyphicon-floppy-save:before {
  content: "\e175";
}
.glyphicon-floppy-open:before {
  content: "\e176";
}
.glyphicon-credit-card:before {
  content: "\e177";
}
.glyphicon-transfer:before {
  content: "\e178";
}
.glyphicon-cutlery:before {
  content: "\e179";
}
.glyphicon-header:before {
  content: "\e180";
}
.glyphicon-compressed:before {
  content: "\e181";
}
.glyphicon-earphone:before {
  content: "\e182";
}
.glyphicon-phone-alt:before {
  content: "\e183";
}
.glyphicon-tower:before {
  content: "\e184";
}
.glyphicon-stats:before {
  content: "\e185";
}
.glyphicon-sd-video:before {
  content: "\e186";
}
.glyphicon-hd-video:before {
  content: "\e187";
}
.glyphicon-subtitles:before {
  content: "\e188";
}
.glyphicon-sound-stereo:before {
  content: "\e189";
}
.glyphicon-sound-dolby:before {
  content: "\e190";
}
.glyphicon-sound-5-1:before {
  content: "\e191";
}
.glyphicon-sound-6-1:before {
  content: "\e192";
}
.glyphicon-sound-7-1:before {
  content: "\e193";
}
.glyphicon-copyright-mark:before {
  content: "\e194";
}
.glyphicon-registration-mark:before {
  content: "\e195";
}
.glyphicon-cloud-download:before {
  content: "\e197";
}
.glyphicon-cloud-upload:before {
  content: "\e198";
}
.glyphicon-tree-conifer:before {
  content: "\e199";
}
.glyphicon-tree-deciduous:before {
  content: "\e200";
}
.glyphicon-cd:before {
  content: "\e201";
}
.glyphicon-save-file:before {
  content: "\e202";
}
.glyphicon-open-file:before {
  content: "\e203";
}
.glyphicon-level-up:before {
  content: "\e204";
}
.glyphicon-copy:before {
  content: "\e205";
}
.glyphicon-paste:before {
  content: "\e206";
}
.glyphicon-alert:before {
  content: "\e209";
}
.glyphicon-equalizer:before {
  content: "\e210";
}
.glyphicon-king:before {
  content: "\e211";
}
.glyphicon-queen:before {
  content: "\e212";
}
.glyphicon-pawn:before {
  content: "\e213";
}
.glyphicon-bishop:before {
  content: "\e214";
}
.glyphicon-knight:before {
  content: "\e215";
}
.glyphicon-baby-formula:before {
  content: "\e216";
}
.glyphicon-tent:before {
  content: "\26fa";
}
.glyphicon-blackboard:before {
  content: "\e218";
}
.glyphicon-bed:before {
  content: "\e219";
}
.glyphicon-apple:before {
  content: "\f8ff";
}
.glyphicon-erase:before {
  content: "\e221";
}
.glyphicon-hourglass:before {
  content: "\231b";
}
.glyphicon-lamp:before {
  content: "\e223";
}
.glyphicon-duplicate:before {
  content: "\e224";
}
.glyphicon-piggy-bank:before {
  content: "\e225";
}
.glyphicon-scissors:before {
  content: "\e226";
}
.glyphicon-bitcoin:before {
  content: "\e227";
}
.glyphicon-btc:before {
  content: "\e227";
}
.glyphicon-xbt:before {
  content: "\e227";
}
.glyphicon-yen:before {
  content: "\00a5";
}
.glyphicon-jpy:before {
  content: "\00a5";
}
.glyphicon-ruble:before {
  content: "\20bd";
}
.glyphicon-rub:before {
  content: "\20bd";
}
.glyphicon-scale:before {
  content: "\e230";
}
.glyphicon-ice-lolly:before {
  content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}
.glyphicon-education:before {
  content: "\e233";
}
.glyphicon-option-horizontal:before {
  content: "\e234";
}
.glyphicon-option-vertical:before {
  content: "\e235";
}
.glyphicon-menu-hamburger:before {
  content: "\e236";
}
.glyphicon-modal-window:before {
  content: "\e237";
}
.glyphicon-oil:before {
  content: "\e238";
}
.glyphicon-grain:before {
  content: "\e239";
}
.glyphicon-sunglasses:before {
  content: "\e240";
}
.glyphicon-text-size:before {
  content: "\e241";
}
.glyphicon-text-color:before {
  content: "\e242";
}
.glyphicon-text-background:before {
  content: "\e243";
}
.glyphicon-object-align-top:before {
  content: "\e244";
}
.glyphicon-object-align-bottom:before {
  content: "\e245";
}
.glyphicon-object-align-horizontal:before {
  content: "\e246";
}
.glyphicon-object-align-left:before {
  content: "\e247";
}
.glyphicon-object-align-vertical:before {
  content: "\e248";
}
.glyphicon-object-align-right:before {
  content: "\e249";
}
.glyphicon-triangle-right:before {
  content: "\e250";
}
.glyphicon-triangle-left:before {
  content: "\e251";
}
.glyphicon-triangle-bottom:before {
  content: "\e252";
}
.glyphicon-triangle-top:before {
  content: "\e253";
}
.glyphicon-console:before {
  content: "\e254";
}
.glyphicon-superscript:before {
  content: "\e255";
}
.glyphicon-subscript:before {
  content: "\e256";
}
.glyphicon-menu-left:before {
  content: "\e257";
}
.glyphicon-menu-right:before {
  content: "\e258";
}
.glyphicon-menu-down:before {
  content: "\e259";
}
.glyphicon-menu-up:before {
  content: "\e260";
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
  line-height: 1.42857143;
  color: #000;
  background-color: #fff;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #337ab7;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
figure {
  margin: 0;
}
img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 3px;
}
.img-thumbnail {
  padding: 4px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.img-circle {
  border-radius: 50%;
}
hr {
  margin-top: 18px;
  margin-bottom: 18px;
  border: 0;
  border-top: 1px solid #eeeeee;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
[role="button"] {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #777777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 18px;
  margin-bottom: 9px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 9px;
  margin-bottom: 9px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 33px;
}
h2,
.h2 {
  font-size: 27px;
}
h3,
.h3 {
  font-size: 23px;
}
h4,
.h4 {
  font-size: 17px;
}
h5,
.h5 {
  font-size: 13px;
}
h6,
.h6 {
  font-size: 12px;
}
p {
  margin: 0 0 9px;
}
.lead {
  margin-bottom: 18px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 19.5px;
  }
}
small,
.small {
  font-size: 92%;
}
mark,
.mark {
  background-color: #fcf8e3;
  padding: .2em;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #777777;
}
.text-primary {
  color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}
.text-success {
  color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}
.text-info {
  color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
  color: #245269;
}
.text-warning {
  color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}
.text-danger {
  color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}
.bg-primary {
  color: #fff;
  background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 8px;
  margin: 36px 0 18px;
  border-bottom: 1px solid #eeeeee;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 9px;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}
.list-inline > li {
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
dl {
  margin-top: 0;
  margin-bottom: 18px;
}
dt,
dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@media (min-width: 541px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 9px 18px;
  margin: 0 0 18px;
  font-size: inherit;
  border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 18px;
  font-style: normal;
  line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
  font-family: monospace;
}
code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 2px;
}
kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #888;
  background-color: transparent;
  border-radius: 1px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  box-shadow: none;
}
pre {
  display: block;
  padding: 8.5px;
  margin: 0 0 9px;
  font-size: 12px;
  line-height: 1.42857143;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 2px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
}
@media (min-width: 768px) {
  .container {
    width: 768px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 940px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1140px;
  }
}
.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
}
.row {
  margin-left: 0px;
  margin-right: 0px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 0px;
  padding-right: 0px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0%;
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 18px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}
table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column;
}
table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}
.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 13.5px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 18px;
  font-size: 19.5px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
input[type="file"] {
  display: block;
}
input[type="range"] {
  display: block;
  width: 100%;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
output {
  display: block;
  padding-top: 7px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
}
.form-control {
  display: block;
  width: 100%;
  height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  border: 0;
  background-color: transparent;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 32px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm,
  .input-group-sm input[type="date"],
  .input-group-sm input[type="time"],
  .input-group-sm input[type="datetime-local"],
  .input-group-sm input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg,
  .input-group-lg input[type="date"],
  .input-group-lg input[type="time"],
  .input-group-lg input[type="datetime-local"],
  .input-group-lg input[type="month"] {
    line-height: 45px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 18px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}
.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 31px;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}
.input-sm {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
select.input-sm {
  height: 30px;
  line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}
.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 30px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.input-lg {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
select.input-lg {
  height: 45px;
  line-height: 45px;
}
textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}
.form-group-lg .form-control {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
.form-group-lg select.form-control {
  height: 45px;
  line-height: 45px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 45px;
  min-height: 35px;
  padding: 11px 16px;
  font-size: 17px;
  line-height: 1.3333333;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 40px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 45px;
  height: 45px;
  line-height: 45px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
  top: 23px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #404040;
}
@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 25px;
}
.form-horizontal .form-group {
  margin-left: 0px;
  margin-right: 0px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 0px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 17px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}
.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  border-radius: 2px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}
.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}
.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}
.collapse {
  display: none;
}
.collapse.in {
  display: block;
}
tr.collapse.in {
  display: table-row;
}
tbody.collapse.in {
  display: table-row-group;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.dropup,
.dropdown {
  position: relative;
}
.dropdown-toggle:focus {
  outline: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 13px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 2px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 8px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #777777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed;
}
.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}
.dropdown-menu-right {
  left: auto;
  right: 0;
}
.dropdown-menu-left {
  left: 0;
  right: auto;
}
.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #777777;
  white-space: nowrap;
}
.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990;
}
.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}
@media (min-width: 541px) {
  .navbar-right .dropdown-menu {
    left: auto;
    right: 0;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}
.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group > .btn-group {
  float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .caret {
  border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group .form-control:focus {
  z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.input-group-addon {
  padding: 6px 12px;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 2px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 1px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 17px;
  border-radius: 3px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.input-group-addon:first-child {
  border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.input-group-addon:last-child {
  border-left: 0;
}
.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}
.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.nav > li.disabled > a {
  color: #777777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 8px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}
.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 2px 2px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 2px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 2px 2px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 2px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 2px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 2px 2px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.navbar {
  position: relative;
  min-height: 30px;
  margin-bottom: 18px;
  border: 1px solid transparent;
}
@media (min-width: 541px) {
  .navbar {
    border-radius: 2px;
  }
}
@media (min-width: 541px) {
  .navbar-header {
    float: left;
  }
}
.navbar-collapse {
  overflow-x: visible;
  padding-right: 0px;
  padding-left: 0px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 541px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-left: 0;
    padding-right: 0;
  }
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 540px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: 0px;
  margin-left: 0px;
}
@media (min-width: 541px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}
.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 541px) {
  .navbar-static-top {
    border-radius: 0;
  }
}
.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 541px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}
.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}
.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}
.navbar-brand {
  float: left;
  padding: 6px 0px;
  font-size: 17px;
  line-height: 18px;
  height: 30px;
}
.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 541px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: 0px;
  }
}
.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 0px;
  padding: 9px 10px;
  margin-top: -2px;
  margin-bottom: -2px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 2px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 541px) {
  .navbar-toggle {
    display: none;
  }
}
.navbar-nav {
  margin: 3px 0px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 18px;
}
@media (max-width: 540px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 18px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 541px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
.navbar-form {
  margin-left: 0px;
  margin-right: 0px;
  padding: 10px 0px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: -1px;
  margin-bottom: -1px;
}
@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .navbar-form .form-control-static {
    display: inline-block;
  }
  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }
  .navbar-form .input-group > .form-control {
    width: 100%;
  }
  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }
  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}
@media (max-width: 540px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 541px) {
  .navbar-form {
    width: auto;
    border: 0;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}
.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: -1px;
  margin-bottom: -1px;
}
.navbar-btn.btn-sm {
  margin-top: 0px;
  margin-bottom: 0px;
}
.navbar-btn.btn-xs {
  margin-top: 4px;
  margin-bottom: 4px;
}
.navbar-text {
  margin-top: 6px;
  margin-bottom: 6px;
}
@media (min-width: 541px) {
  .navbar-text {
    float: left;
    margin-left: 0px;
    margin-right: 0px;
  }
}
@media (min-width: 541px) {
  .navbar-left {
    float: left !important;
    float: left;
  }
  .navbar-right {
    float: right !important;
    float: right;
    margin-right: 0px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background-color: #e7e7e7;
  color: #555;
}
@media (max-width: 540px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #222;
  border-color: #080808;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  background-color: #080808;
  color: #fff;
}
@media (max-width: 540px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 18px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 2px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  content: "/\00a0";
  padding: 0 5px;
  color: #5e5e5e;
}
.breadcrumb > .active {
  color: #777777;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 18px 0;
  border-radius: 2px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  line-height: 1.42857143;
  text-decoration: none;
  color: #337ab7;
  background-color: #fff;
  border: 1px solid #ddd;
  margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-bottom-right-radius: 2px;
  border-top-right-radius: 2px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  z-index: 2;
  color: #23527c;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
  cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777777;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 1px;
  border-top-left-radius: 1px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 1px;
  border-top-right-radius: 1px;
}
.pager {
  padding-left: 0;
  margin: 18px 0;
  list-style: none;
  text-align: center;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777777;
  background-color: #fff;
  cursor: not-allowed;
}
.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #777777;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #5e5e5e;
}
.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #286090;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #31b0d5;
}
.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}
.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #c9302c;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  border-radius: 3px;
  padding-left: 0px;
  padding-right: 0px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-left: 60px;
    padding-right: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 59px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 18px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  margin-left: auto;
  margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}
.thumbnail .caption {
  padding: 9px;
  color: #000;
}
.alert {
  padding: 15px;
  margin-bottom: 18px;
  border: 1px solid transparent;
  border-radius: 2px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  overflow: hidden;
  height: 18px;
  margin-bottom: 18px;
  background-color: #f5f5f5;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 18px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}
.media,
.media-body {
  zoom: 1;
  overflow: hidden;
}
.media-body {
  width: 10000px;
}
.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}
.media-right,
.media > .pull-right {
  padding-left: 10px;
}
.media-left,
.media > .pull-left {
  padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}
.media-middle {
  vertical-align: middle;
}
.media-bottom {
  vertical-align: bottom;
}
.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.media-list {
  padding-left: 0;
  list-style: none;
}
.list-group {
  margin-bottom: 20px;
  padding-left: 0;
}
.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}
a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
  text-decoration: none;
  color: #555;
  background-color: #f5f5f5;
}
button.list-group-item {
  width: 100%;
  text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
  color: #777777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}
.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}
.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}
.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}
.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}
.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}
.panel {
  margin-bottom: 18px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.panel-body {
  padding: 15px;
}
.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 15px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}
.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}
.list-group + .panel-footer {
  border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-left: 15px;
  padding-right: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 1px;
  border-top-right-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 1px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-left-radius: 1px;
  border-bottom-right-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 1px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  border: 0;
  margin-bottom: 0;
}
.panel-group {
  margin-bottom: 18px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 2px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}
.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}
.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}
.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
  padding-bottom: 75%;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}
.well-lg {
  padding: 24px;
  border-radius: 3px;
}
.well-sm {
  padding: 9px;
  border-radius: 1px;
}
.close {
  float: right;
  font-size: 19.5px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
}
.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}
.modal-open {
  overflow: hidden;
}
.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}
.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}
.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0);
}
.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}
.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}
.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}
.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}
.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 2px;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 13px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 13px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 2px 2px 0 0;
}
.popover-content {
  padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow:after {
  border-width: 10px;
  content: "";
}
.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px;
}
.popover.top > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -10px;
  border-bottom-width: 0;
  border-top-color: #fff;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #fff;
}
.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px;
}
.popover.bottom > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -10px;
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #fff;
  bottom: -10px;
}
.carousel {
  position: relative;
}
.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.carousel-inner > .item {
  display: none;
  position: relative;
  -webkit-transition: 0.6s ease-in-out left;
  -o-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0);
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
  left: auto;
  right: 0;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
  outline: 0;
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  z-index: 5;
  display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  line-height: 1;
  font-family: serif;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}
.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  border: 1px solid #fff;
  border-radius: 10px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
}
.carousel-indicators .active {
  margin: 0;
  width: 12px;
  height: 12px;
  background-color: #fff;
}
.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after,
.item_buttons:before,
.item_buttons:after {
  content: " ";
  display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after,
.item_buttons:after {
  clear: both;
}
.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.pull-right {
  float: right !important;
}
.pull-left {
  float: left !important;
}
.hide {
  display: none !important;
}
.show {
  display: block !important;
}
.invisible {
  visibility: hidden;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.hidden {
  display: none !important;
}
.affix {
  position: fixed;
}
@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
/*!
*
* Font Awesome
*
*/
/*!
 *  Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0');
  src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em;
}
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #fff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
/*!
*
* IPython base
*
*/
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
code {
  color: #000;
}
pre {
  font-size: inherit;
  line-height: inherit;
}
label {
  font-weight: normal;
}
/* Make the page background atleast 100% the height of the view port */
/* Make the page itself atleast 70% the height of the view port */
.border-box-sizing {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.corner-all {
  border-radius: 2px;
}
.no-padding {
  padding: 0px;
}
/* Flexible box model classes */
/* Taken from Alex Russell http://infrequently.org/2009/08/css-3-progress/ */
/* This file is a compatability layer.  It allows the usage of flexible box 
model layouts accross multiple browsers, including older browsers.  The newest,
universal implementation of the flexible box model is used when available (see
`Modern browsers` comments below).  Browsers that are known to implement this 
new spec completely include:

    Firefox 28.0+
    Chrome 29.0+
    Internet Explorer 11+ 
    Opera 17.0+

Browsers not listed, including Safari, are supported via the styling under the
`Old browsers` comments below.
*/
.hbox {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
.hbox > * {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
}
.vbox {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.vbox > * {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
}
.hbox.reverse,
.vbox.reverse,
.reverse {
  /* Old browsers */
  -webkit-box-direction: reverse;
  -moz-box-direction: reverse;
  box-direction: reverse;
  /* Modern browsers */
  flex-direction: row-reverse;
}
.hbox.box-flex0,
.vbox.box-flex0,
.box-flex0 {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
  width: auto;
}
.hbox.box-flex1,
.vbox.box-flex1,
.box-flex1 {
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
.hbox.box-flex,
.vbox.box-flex,
.box-flex {
  /* Old browsers */
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
.hbox.box-flex2,
.vbox.box-flex2,
.box-flex2 {
  /* Old browsers */
  -webkit-box-flex: 2;
  -moz-box-flex: 2;
  box-flex: 2;
  /* Modern browsers */
  flex: 2;
}
.box-group1 {
  /*  Deprecated */
  -webkit-box-flex-group: 1;
  -moz-box-flex-group: 1;
  box-flex-group: 1;
}
.box-group2 {
  /* Deprecated */
  -webkit-box-flex-group: 2;
  -moz-box-flex-group: 2;
  box-flex-group: 2;
}
.hbox.start,
.vbox.start,
.start {
  /* Old browsers */
  -webkit-box-pack: start;
  -moz-box-pack: start;
  box-pack: start;
  /* Modern browsers */
  justify-content: flex-start;
}
.hbox.end,
.vbox.end,
.end {
  /* Old browsers */
  -webkit-box-pack: end;
  -moz-box-pack: end;
  box-pack: end;
  /* Modern browsers */
  justify-content: flex-end;
}
.hbox.center,
.vbox.center,
.center {
  /* Old browsers */
  -webkit-box-pack: center;
  -moz-box-pack: center;
  box-pack: center;
  /* Modern browsers */
  justify-content: center;
}
.hbox.baseline,
.vbox.baseline,
.baseline {
  /* Old browsers */
  -webkit-box-pack: baseline;
  -moz-box-pack: baseline;
  box-pack: baseline;
  /* Modern browsers */
  justify-content: baseline;
}
.hbox.stretch,
.vbox.stretch,
.stretch {
  /* Old browsers */
  -webkit-box-pack: stretch;
  -moz-box-pack: stretch;
  box-pack: stretch;
  /* Modern browsers */
  justify-content: stretch;
}
.hbox.align-start,
.vbox.align-start,
.align-start {
  /* Old browsers */
  -webkit-box-align: start;
  -moz-box-align: start;
  box-align: start;
  /* Modern browsers */
  align-items: flex-start;
}
.hbox.align-end,
.vbox.align-end,
.align-end {
  /* Old browsers */
  -webkit-box-align: end;
  -moz-box-align: end;
  box-align: end;
  /* Modern browsers */
  align-items: flex-end;
}
.hbox.align-center,
.vbox.align-center,
.align-center {
  /* Old browsers */
  -webkit-box-align: center;
  -moz-box-align: center;
  box-align: center;
  /* Modern browsers */
  align-items: center;
}
.hbox.align-baseline,
.vbox.align-baseline,
.align-baseline {
  /* Old browsers */
  -webkit-box-align: baseline;
  -moz-box-align: baseline;
  box-align: baseline;
  /* Modern browsers */
  align-items: baseline;
}
.hbox.align-stretch,
.vbox.align-stretch,
.align-stretch {
  /* Old browsers */
  -webkit-box-align: stretch;
  -moz-box-align: stretch;
  box-align: stretch;
  /* Modern browsers */
  align-items: stretch;
}
div.error {
  margin: 2em;
  text-align: center;
}
div.error > h1 {
  font-size: 500%;
  line-height: normal;
}
div.error > p {
  font-size: 200%;
  line-height: normal;
}
div.traceback-wrapper {
  text-align: left;
  max-width: 800px;
  margin: auto;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
body {
  background-color: #fff;
  /* This makes sure that the body covers the entire window and needs to
       be in a different element than the display: box in wrapper below */
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  overflow: visible;
}
body > #header {
  /* Initially hidden to prevent FLOUC */
  display: none;
  background-color: #fff;
  /* Display over codemirror */
  position: relative;
  z-index: 100;
}
body > #header #header-container {
  padding-bottom: 5px;
  padding-top: 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
body > #header .header-bar {
  width: 100%;
  height: 1px;
  background: #e7e7e7;
  margin-bottom: -1px;
}
@media print {
  body > #header {
    display: none !important;
  }
}
#header-spacer {
  width: 100%;
  visibility: hidden;
}
@media print {
  #header-spacer {
    display: none;
  }
}
#ipython_notebook {
  padding-left: 0px;
  padding-top: 1px;
  padding-bottom: 1px;
}
@media (max-width: 991px) {
  #ipython_notebook {
    margin-left: 10px;
  }
}
#noscript {
  width: auto;
  padding-top: 16px;
  padding-bottom: 16px;
  text-align: center;
  font-size: 22px;
  color: red;
  font-weight: bold;
}
#ipython_notebook img {
  height: 28px;
}
#site {
  width: 100%;
  display: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  overflow: auto;
}
@media print {
  #site {
    height: auto !important;
  }
}
/* Smaller buttons */
.ui-button .ui-button-text {
  padding: 0.2em 0.8em;
  font-size: 77%;
}
input.ui-button {
  padding: 0.3em 0.9em;
}
span#login_widget {
  float: right;
}
span#login_widget > .button,
#logout {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
span#login_widget > .button:focus,
#logout:focus,
span#login_widget > .button.focus,
#logout.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
span#login_widget > .button:hover,
#logout:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
span#login_widget > .button:active:hover,
#logout:active:hover,
span#login_widget > .button.active:hover,
#logout.active:hover,
.open > .dropdown-togglespan#login_widget > .button:hover,
.open > .dropdown-toggle#logout:hover,
span#login_widget > .button:active:focus,
#logout:active:focus,
span#login_widget > .button.active:focus,
#logout.active:focus,
.open > .dropdown-togglespan#login_widget > .button:focus,
.open > .dropdown-toggle#logout:focus,
span#login_widget > .button:active.focus,
#logout:active.focus,
span#login_widget > .button.active.focus,
#logout.active.focus,
.open > .dropdown-togglespan#login_widget > .button.focus,
.open > .dropdown-toggle#logout.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
  background-image: none;
}
span#login_widget > .button.disabled:hover,
#logout.disabled:hover,
span#login_widget > .button[disabled]:hover,
#logout[disabled]:hover,
fieldset[disabled] span#login_widget > .button:hover,
fieldset[disabled] #logout:hover,
span#login_widget > .button.disabled:focus,
#logout.disabled:focus,
span#login_widget > .button[disabled]:focus,
#logout[disabled]:focus,
fieldset[disabled] span#login_widget > .button:focus,
fieldset[disabled] #logout:focus,
span#login_widget > .button.disabled.focus,
#logout.disabled.focus,
span#login_widget > .button[disabled].focus,
#logout[disabled].focus,
fieldset[disabled] span#login_widget > .button.focus,
fieldset[disabled] #logout.focus {
  background-color: #fff;
  border-color: #ccc;
}
span#login_widget > .button .badge,
#logout .badge {
  color: #fff;
  background-color: #333;
}
.nav-header {
  text-transform: none;
}
#header > span {
  margin-top: 10px;
}
.modal_stretch .modal-dialog {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 80vh;
}
.modal_stretch .modal-dialog .modal-body {
  max-height: calc(100vh - 200px);
  overflow: auto;
  flex: 1;
}
@media (min-width: 768px) {
  .modal .modal-dialog {
    width: 700px;
  }
}
@media (min-width: 768px) {
  select.form-control {
    margin-left: 12px;
    margin-right: 12px;
  }
}
/*!
*
* IPython auth
*
*/
.center-nav {
  display: inline-block;
  margin-bottom: -4px;
}
/*!
*
* IPython tree view
*
*/
/* We need an invisible input field on top of the sentense*/
/* "Drag file onto the list ..." */
.alternate_upload {
  background-color: none;
  display: inline;
}
.alternate_upload.form {
  padding: 0;
  margin: 0;
}
.alternate_upload input.fileinput {
  text-align: center;
  vertical-align: middle;
  display: inline;
  opacity: 0;
  z-index: 2;
  width: 12ex;
  margin-right: -12ex;
}
.alternate_upload .btn-upload {
  height: 22px;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
ul#tabs {
  margin-bottom: 4px;
}
ul#tabs a {
  padding-top: 6px;
  padding-bottom: 4px;
}
ul.breadcrumb a:focus,
ul.breadcrumb a:hover {
  text-decoration: none;
}
ul.breadcrumb i.icon-home {
  font-size: 16px;
  margin-right: 4px;
}
ul.breadcrumb span {
  color: #5e5e5e;
}
.list_toolbar {
  padding: 4px 0 4px 0;
  vertical-align: middle;
}
.list_toolbar .tree-buttons {
  padding-top: 1px;
}
.dynamic-buttons {
  padding-top: 3px;
  display: inline-block;
}
.list_toolbar [class*="span"] {
  min-height: 24px;
}
.list_header {
  font-weight: bold;
  background-color: #EEE;
}
.list_placeholder {
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
}
.list_container {
  margin-top: 4px;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  border-radius: 2px;
}
.list_container > div {
  border-bottom: 1px solid #ddd;
}
.list_container > div:hover .list-item {
  background-color: red;
}
.list_container > div:last-child {
  border: none;
}
.list_item:hover .list_item {
  background-color: #ddd;
}
.list_item a {
  text-decoration: none;
}
.list_item:hover {
  background-color: #fafafa;
}
.list_header > div,
.list_item > div {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 22px;
}
.list_header > div input,
.list_item > div input {
  margin-right: 7px;
  margin-left: 14px;
  vertical-align: baseline;
  line-height: 22px;
  position: relative;
  top: -1px;
}
.list_header > div .item_link,
.list_item > div .item_link {
  margin-left: -1px;
  vertical-align: baseline;
  line-height: 22px;
}
.new-file input[type=checkbox] {
  visibility: hidden;
}
.item_name {
  line-height: 22px;
  height: 24px;
}
.item_icon {
  font-size: 14px;
  color: #5e5e5e;
  margin-right: 7px;
  margin-left: 7px;
  line-height: 22px;
  vertical-align: baseline;
}
.item_buttons {
  line-height: 1em;
  margin-left: -5px;
}
.item_buttons .btn,
.item_buttons .btn-group,
.item_buttons .input-group {
  float: left;
}
.item_buttons > .btn,
.item_buttons > .btn-group,
.item_buttons > .input-group {
  margin-left: 5px;
}
.item_buttons .btn {
  min-width: 13ex;
}
.item_buttons .running-indicator {
  padding-top: 4px;
  color: #5cb85c;
}
.item_buttons .kernel-name {
  padding-top: 4px;
  color: #5bc0de;
  margin-right: 7px;
  float: left;
}
.toolbar_info {
  height: 24px;
  line-height: 24px;
}
.list_item input:not([type=checkbox]) {
  padding-top: 3px;
  padding-bottom: 3px;
  height: 22px;
  line-height: 14px;
  margin: 0px;
}
.highlight_text {
  color: blue;
}
#project_name {
  display: inline-block;
  padding-left: 7px;
  margin-left: -2px;
}
#project_name > .breadcrumb {
  padding: 0px;
  margin-bottom: 0px;
  background-color: transparent;
  font-weight: bold;
}
#tree-selector {
  padding-right: 0px;
}
#button-select-all {
  min-width: 50px;
}
#select-all {
  margin-left: 7px;
  margin-right: 2px;
}
.menu_icon {
  margin-right: 2px;
}
.tab-content .row {
  margin-left: 0px;
  margin-right: 0px;
}
.folder_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f114";
}
.folder_icon:before.pull-left {
  margin-right: .3em;
}
.folder_icon:before.pull-right {
  margin-left: .3em;
}
.notebook_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f02d";
  position: relative;
  top: -1px;
}
.notebook_icon:before.pull-left {
  margin-right: .3em;
}
.notebook_icon:before.pull-right {
  margin-left: .3em;
}
.running_notebook_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f02d";
  position: relative;
  top: -1px;
  color: #5cb85c;
}
.running_notebook_icon:before.pull-left {
  margin-right: .3em;
}
.running_notebook_icon:before.pull-right {
  margin-left: .3em;
}
.file_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f016";
  position: relative;
  top: -2px;
}
.file_icon:before.pull-left {
  margin-right: .3em;
}
.file_icon:before.pull-right {
  margin-left: .3em;
}
#notebook_toolbar .pull-right {
  padding-top: 0px;
  margin-right: -1px;
}
ul#new-menu {
  left: auto;
  right: 0;
}
.kernel-menu-icon {
  padding-right: 12px;
  width: 24px;
  content: "\f096";
}
.kernel-menu-icon:before {
  content: "\f096";
}
.kernel-menu-icon-current:before {
  content: "\f00c";
}
#tab_content {
  padding-top: 20px;
}
#running .panel-group .panel {
  margin-top: 3px;
  margin-bottom: 1em;
}
#running .panel-group .panel .panel-heading {
  background-color: #EEE;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 22px;
}
#running .panel-group .panel .panel-heading a:focus,
#running .panel-group .panel .panel-heading a:hover {
  text-decoration: none;
}
#running .panel-group .panel .panel-body {
  padding: 0px;
}
#running .panel-group .panel .panel-body .list_container {
  margin-top: 0px;
  margin-bottom: 0px;
  border: 0px;
  border-radius: 0px;
}
#running .panel-group .panel .panel-body .list_container .list_item {
  border-bottom: 1px solid #ddd;
}
#running .panel-group .panel .panel-body .list_container .list_item:last-child {
  border-bottom: 0px;
}
.delete-button {
  display: none;
}
.duplicate-button {
  display: none;
}
.rename-button {
  display: none;
}
.shutdown-button {
  display: none;
}
.dynamic-instructions {
  display: inline-block;
  padding-top: 4px;
}
/*!
*
* IPython text editor webapp
*
*/
.selected-keymap i.fa {
  padding: 0px 5px;
}
.selected-keymap i.fa:before {
  content: "\f00c";
}
#mode-menu {
  overflow: auto;
  max-height: 20em;
}
.edit_app #header {
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.edit_app #menubar .navbar {
  /* Use a negative 1 bottom margin, so the border overlaps the border of the
    header */
  margin-bottom: -1px;
}
.dirty-indicator {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator.pull-left {
  margin-right: .3em;
}
.dirty-indicator.pull-right {
  margin-left: .3em;
}
.dirty-indicator-dirty {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator-dirty.pull-left {
  margin-right: .3em;
}
.dirty-indicator-dirty.pull-right {
  margin-left: .3em;
}
.dirty-indicator-clean {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator-clean.pull-left {
  margin-right: .3em;
}
.dirty-indicator-clean.pull-right {
  margin-left: .3em;
}
.dirty-indicator-clean:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f00c";
}
.dirty-indicator-clean:before.pull-left {
  margin-right: .3em;
}
.dirty-indicator-clean:before.pull-right {
  margin-left: .3em;
}
#filename {
  font-size: 16pt;
  display: table;
  padding: 0px 5px;
}
#current-mode {
  padding-left: 5px;
  padding-right: 5px;
}
#texteditor-backdrop {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media not print {
  #texteditor-backdrop {
    background-color: #EEE;
  }
}
@media print {
  #texteditor-backdrop #texteditor-container .CodeMirror-gutter,
  #texteditor-backdrop #texteditor-container .CodeMirror-gutters {
    background-color: #fff;
  }
}
@media not print {
  #texteditor-backdrop #texteditor-container .CodeMirror-gutter,
  #texteditor-backdrop #texteditor-container .CodeMirror-gutters {
    background-color: #fff;
  }
}
@media not print {
  #texteditor-backdrop #texteditor-container {
    padding: 0px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
    box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  }
}
/*!
*
* IPython notebook
*
*/
/* CSS font colors for translated ANSI colors. */
.ansibold {
  font-weight: bold;
}
/* use dark versions for foreground, to improve visibility */
.ansiblack {
  color: black;
}
.ansired {
  color: darkred;
}
.ansigreen {
  color: darkgreen;
}
.ansiyellow {
  color: #c4a000;
}
.ansiblue {
  color: darkblue;
}
.ansipurple {
  color: darkviolet;
}
.ansicyan {
  color: steelblue;
}
.ansigray {
  color: gray;
}
/* and light for background, for the same reason */
.ansibgblack {
  background-color: black;
}
.ansibgred {
  background-color: red;
}
.ansibggreen {
  background-color: green;
}
.ansibgyellow {
  background-color: yellow;
}
.ansibgblue {
  background-color: blue;
}
.ansibgpurple {
  background-color: magenta;
}
.ansibgcyan {
  background-color: cyan;
}
.ansibggray {
  background-color: gray;
}
div.cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border-radius: 2px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
  width: 100%;
  padding: 5px;
  /* This acts as a spacer between cells, that is outside the border */
  margin: 0px;
  outline: none;
  border-left-width: 1px;
  padding-left: 5px;
  background: linear-gradient(to right, transparent -40px, transparent 1px, transparent 1px, transparent 100%);
}
div.cell.jupyter-soft-selected {
  border-left-color: #90CAF9;
  border-left-color: #E3F2FD;
  border-left-width: 1px;
  padding-left: 5px;
  border-right-color: #E3F2FD;
  border-right-width: 1px;
  background: #E3F2FD;
}
@media print {
  div.cell.jupyter-soft-selected {
    border-color: transparent;
  }
}
div.cell.selected {
  border-color: #ababab;
  border-left-width: 0px;
  padding-left: 6px;
  background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 5px, transparent 5px, transparent 100%);
}
@media print {
  div.cell.selected {
    border-color: transparent;
  }
}
div.cell.selected.jupyter-soft-selected {
  border-left-width: 0;
  padding-left: 6px;
  background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 7px, #E3F2FD 7px, #E3F2FD 100%);
}
.edit_mode div.cell.selected {
  border-color: #66BB6A;
  border-left-width: 0px;
  padding-left: 6px;
  background: linear-gradient(to right, #66BB6A -40px, #66BB6A 5px, transparent 5px, transparent 100%);
}
@media print {
  .edit_mode div.cell.selected {
    border-color: transparent;
  }
}
.prompt {
  /* This needs to be wide enough for 3 digit prompt numbers: In[100]: */
  min-width: 14ex;
  /* This padding is tuned to match the padding on the CodeMirror editor. */
  padding: 0.4em;
  margin: 0px;
  font-family: monospace;
  text-align: right;
  /* This has to match that of the the CodeMirror class line-height below */
  line-height: 1.21429em;
  /* Don't highlight prompt number selection */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* Use default cursor */
  cursor: default;
}
@media (max-width: 540px) {
  .prompt {
    text-align: left;
  }
}
div.inner_cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
@-moz-document url-prefix() {
  div.inner_cell {
    overflow-x: hidden;
  }
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_area {
  border: 1px solid #cfcfcf;
  border-radius: 2px;
  background: #f7f7f7;
  line-height: 1.21429em;
}
/* This is needed so that empty prompt areas can collapse to zero height when there
   is no content in the output_subarea and the prompt. The main purpose of this is
   to make sure that empty JavaScript output_subareas have no height. */
div.prompt:empty {
  padding-top: 0;
  padding-bottom: 0;
}
div.unrecognized_cell {
  padding: 5px 5px 5px 0px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
div.unrecognized_cell .inner_cell {
  border-radius: 2px;
  padding: 5px;
  font-weight: bold;
  color: red;
  border: 1px solid #cfcfcf;
  background: #eaeaea;
}
div.unrecognized_cell .inner_cell a {
  color: inherit;
  text-decoration: none;
}
div.unrecognized_cell .inner_cell a:hover {
  color: inherit;
  text-decoration: none;
}
@media (max-width: 540px) {
  div.unrecognized_cell > div.prompt {
    display: none;
  }
}
div.code_cell {
  /* avoid page breaking on code cells when printing */
}
@media print {
  div.code_cell {
    page-break-inside: avoid;
  }
}
/* any special styling for code cells that are currently running goes here */
div.input {
  page-break-inside: avoid;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.input {
    /* Old browsers */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-align: stretch;
    display: -moz-box;
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    display: box;
    box-orient: vertical;
    box-align: stretch;
    /* Modern browsers */
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_prompt {
  color: #303F9F;
  border-top: 1px solid transparent;
}
div.input_area > div.highlight {
  margin: 0.4em;
  border: none;
  padding: 0px;
  background-color: transparent;
}
div.input_area > div.highlight > pre {
  margin: 0px;
  border: none;
  padding: 0px;
  background-color: transparent;
}
/* The following gets added to the <head> if it is detected that the user has a
 * monospace font with inconsistent normal/bold/italic height.  See
 * notebookmain.js.  Such fonts will have keywords vertically offset with
 * respect to the rest of the text.  The user should select a better font.
 * See: https://github.com/ipython/ipython/issues/1503
 *
 * .CodeMirror span {
 *      vertical-align: bottom;
 * }
 */
.CodeMirror {
  line-height: 1.21429em;
  /* Changed from 1em to our global default */
  font-size: 14px;
  height: auto;
  /* Changed to auto to autogrow */
  background: none;
  /* Changed from white to allow our bg to show through */
}
.CodeMirror-scroll {
  /*  The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
  /*  We have found that if it is visible, vertical scrollbars appear with font size changes.*/
  overflow-y: hidden;
  overflow-x: auto;
}
.CodeMirror-lines {
  /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
  /* we have set a different line-height and want this to scale with that. */
  padding: 0.4em;
}
.CodeMirror-linenumber {
  padding: 0 8px 0 4px;
}
.CodeMirror-gutters {
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}
.CodeMirror pre {
  /* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */
  /* .CodeMirror-lines */
  padding: 0;
  border: 0;
  border-radius: 0;
}
/*

Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
Adapted from GitHub theme

*/
.highlight-base {
  color: #000;
}
.highlight-variable {
  color: #000;
}
.highlight-variable-2 {
  color: #1a1a1a;
}
.highlight-variable-3 {
  color: #333333;
}
.highlight-string {
  color: #BA2121;
}
.highlight-comment {
  color: #408080;
  font-style: italic;
}
.highlight-number {
  color: #080;
}
.highlight-atom {
  color: #88F;
}
.highlight-keyword {
  color: #008000;
  font-weight: bold;
}
.highlight-builtin {
  color: #008000;
}
.highlight-error {
  color: #f00;
}
.highlight-operator {
  color: #AA22FF;
  font-weight: bold;
}
.highlight-meta {
  color: #AA22FF;
}
/* previously not defined, copying from default codemirror */
.highlight-def {
  color: #00f;
}
.highlight-string-2 {
  color: #f50;
}
.highlight-qualifier {
  color: #555;
}
.highlight-bracket {
  color: #997;
}
.highlight-tag {
  color: #170;
}
.highlight-attribute {
  color: #00c;
}
.highlight-header {
  color: blue;
}
.highlight-quote {
  color: #090;
}
.highlight-link {
  color: #00c;
}
/* apply the same style to codemirror */
.cm-s-ipython span.cm-keyword {
  color: #008000;
  font-weight: bold;
}
.cm-s-ipython span.cm-atom {
  color: #88F;
}
.cm-s-ipython span.cm-number {
  color: #080;
}
.cm-s-ipython span.cm-def {
  color: #00f;
}
.cm-s-ipython span.cm-variable {
  color: #000;
}
.cm-s-ipython span.cm-operator {
  color: #AA22FF;
  font-weight: bold;
}
.cm-s-ipython span.cm-variable-2 {
  color: #1a1a1a;
}
.cm-s-ipython span.cm-variable-3 {
  color: #333333;
}
.cm-s-ipython span.cm-comment {
  color: #408080;
  font-style: italic;
}
.cm-s-ipython span.cm-string {
  color: #BA2121;
}
.cm-s-ipython span.cm-string-2 {
  color: #f50;
}
.cm-s-ipython span.cm-meta {
  color: #AA22FF;
}
.cm-s-ipython span.cm-qualifier {
  color: #555;
}
.cm-s-ipython span.cm-builtin {
  color: #008000;
}
.cm-s-ipython span.cm-bracket {
  color: #997;
}
.cm-s-ipython span.cm-tag {
  color: #170;
}
.cm-s-ipython span.cm-attribute {
  color: #00c;
}
.cm-s-ipython span.cm-header {
  color: blue;
}
.cm-s-ipython span.cm-quote {
  color: #090;
}
.cm-s-ipython span.cm-link {
  color: #00c;
}
.cm-s-ipython span.cm-error {
  color: #f00;
}
.cm-s-ipython span.cm-tab {
  background: url();
  background-position: right;
  background-repeat: no-repeat;
}
div.output_wrapper {
  /* this position must be relative to enable descendents to be absolute within it */
  position: relative;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  z-index: 1;
}
/* class for the output area when it should be height-limited */
div.output_scroll {
  /* ideally, this would be max-height, but FF barfs all over that */
  height: 24em;
  /* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */
  width: 100%;
  overflow: auto;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  display: block;
}
/* output div while it is collapsed */
div.output_collapsed {
  margin: 0px;
  padding: 0px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
div.out_prompt_overlay {
  height: 100%;
  padding: 0px 0.4em;
  position: absolute;
  border-radius: 2px;
}
div.out_prompt_overlay:hover {
  /* use inner shadow to get border that is computed the same on WebKit/FF */
  -webkit-box-shadow: inset 0 0 1px #000;
  box-shadow: inset 0 0 1px #000;
  background: rgba(240, 240, 240, 0.5);
}
div.output_prompt {
  color: #D84315;
}
/* This class is the outer container of all output sections. */
div.output_area {
  padding: 0px;
  page-break-inside: avoid;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
div.output_area .MathJax_Display {
  text-align: left !important;
}
div.output_area .rendered_html table {
  margin-left: 0;
  margin-right: 0;
}
div.output_area .rendered_html img {
  margin-left: 0;
  margin-right: 0;
}
div.output_area img,
div.output_area svg {
  max-width: 100%;
  height: auto;
}
div.output_area img.unconfined,
div.output_area svg.unconfined {
  max-width: none;
}
/* This is needed to protect the pre formating from global settings such
   as that of bootstrap */
.output {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.output_area {
    /* Old browsers */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-align: stretch;
    display: -moz-box;
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    display: box;
    box-orient: vertical;
    box-align: stretch;
    /* Modern browsers */
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
}
div.output_area pre {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  color: black;
  background-color: transparent;
  border-radius: 0;
}
/* This class is for the output subarea inside the output_area and after
   the prompt div. */
div.output_subarea {
  overflow-x: auto;
  padding: 0.4em;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
  max-width: calc(100% - 14ex);
}
div.output_scroll div.output_subarea {
  overflow-x: visible;
}
/* The rest of the output_* classes are for special styling of the different
   output types */
/* all text output has this class: */
div.output_text {
  text-align: left;
  color: #000;
  /* This has to match that of the the CodeMirror class line-height below */
  line-height: 1.21429em;
}
/* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */
div.output_stderr {
  background: #fdd;
  /* very light red background for stderr */
}
div.output_latex {
  text-align: left;
}
/* Empty output_javascript divs should have no height */
div.output_javascript:empty {
  padding: 0;
}
.js-error {
  color: darkred;
}
/* raw_input styles */
div.raw_input_container {
  line-height: 1.21429em;
  padding-top: 5px;
}
pre.raw_input_prompt {
  /* nothing needed here. */
}
input.raw_input {
  font-family: monospace;
  font-size: inherit;
  color: inherit;
  width: auto;
  /* make sure input baseline aligns with prompt */
  vertical-align: baseline;
  /* padding + margin = 0.5em between prompt and cursor */
  padding: 0em 0.25em;
  margin: 0em 0.25em;
}
input.raw_input:focus {
  box-shadow: none;
}
p.p-space {
  margin-bottom: 10px;
}
div.output_unrecognized {
  padding: 5px;
  font-weight: bold;
  color: red;
}
div.output_unrecognized a {
  color: inherit;
  text-decoration: none;
}
div.output_unrecognized a:hover {
  color: inherit;
  text-decoration: none;
}
.rendered_html {
  color: #000;
  /* any extras will just be numbers: */
}
.rendered_html em {
  font-style: italic;
}
.rendered_html strong {
  font-weight: bold;
}
.rendered_html u {
  text-decoration: underline;
}
.rendered_html :link {
  text-decoration: underline;
}
.rendered_html :visited {
  text-decoration: underline;
}
.rendered_html h1 {
  font-size: 185.7%;
  margin: 1.08em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h2 {
  font-size: 157.1%;
  margin: 1.27em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h3 {
  font-size: 128.6%;
  margin: 1.55em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h4 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h5 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
  font-style: italic;
}
.rendered_html h6 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
  font-style: italic;
}
.rendered_html h1:first-child {
  margin-top: 0.538em;
}
.rendered_html h2:first-child {
  margin-top: 0.636em;
}
.rendered_html h3:first-child {
  margin-top: 0.777em;
}
.rendered_html h4:first-child {
  margin-top: 1em;
}
.rendered_html h5:first-child {
  margin-top: 1em;
}
.rendered_html h6:first-child {
  margin-top: 1em;
}
.rendered_html ul {
  list-style: disc;
  margin: 0em 2em;
  padding-left: 0px;
}
.rendered_html ul ul {
  list-style: square;
  margin: 0em 2em;
}
.rendered_html ul ul ul {
  list-style: circle;
  margin: 0em 2em;
}
.rendered_html ol {
  list-style: decimal;
  margin: 0em 2em;
  padding-left: 0px;
}
.rendered_html ol ol {
  list-style: upper-alpha;
  margin: 0em 2em;
}
.rendered_html ol ol ol {
  list-style: lower-alpha;
  margin: 0em 2em;
}
.rendered_html ol ol ol ol {
  list-style: lower-roman;
  margin: 0em 2em;
}
.rendered_html ol ol ol ol ol {
  list-style: decimal;
  margin: 0em 2em;
}
.rendered_html * + ul {
  margin-top: 1em;
}
.rendered_html * + ol {
  margin-top: 1em;
}
.rendered_html hr {
  color: black;
  background-color: black;
}
.rendered_html pre {
  margin: 1em 2em;
}
.rendered_html pre,
.rendered_html code {
  border: 0;
  background-color: #fff;
  color: #000;
  font-size: 100%;
  padding: 0px;
}
.rendered_html blockquote {
  margin: 1em 2em;
}
.rendered_html table {
  margin-left: auto;
  margin-right: auto;
  border: 1px solid black;
  border-collapse: collapse;
}
.rendered_html tr,
.rendered_html th,
.rendered_html td {
  border: 1px solid black;
  border-collapse: collapse;
  margin: 1em 2em;
}
.rendered_html td,
.rendered_html th {
  text-align: left;
  vertical-align: middle;
  padding: 4px;
}
.rendered_html th {
  font-weight: bold;
}
.rendered_html * + table {
  margin-top: 1em;
}
.rendered_html p {
  text-align: left;
}
.rendered_html * + p {
  margin-top: 1em;
}
.rendered_html img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.rendered_html * + img {
  margin-top: 1em;
}
.rendered_html img,
.rendered_html svg {
  max-width: 100%;
  height: auto;
}
.rendered_html img.unconfined,
.rendered_html svg.unconfined {
  max-width: none;
}
div.text_cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.text_cell > div.prompt {
    display: none;
  }
}
div.text_cell_render {
  /*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/
  outline: none;
  resize: none;
  width: inherit;
  border-style: none;
  padding: 0.5em 0.5em 0.5em 0.4em;
  color: #000;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
a.anchor-link:link {
  text-decoration: none;
  padding: 0px 20px;
  visibility: hidden;
}
h1:hover .anchor-link,
h2:hover .anchor-link,
h3:hover .anchor-link,
h4:hover .anchor-link,
h5:hover .anchor-link,
h6:hover .anchor-link {
  visibility: visible;
}
.text_cell.rendered .input_area {
  display: none;
}
.text_cell.rendered .rendered_html {
  overflow-x: auto;
  overflow-y: hidden;
}
.text_cell.unrendered .text_cell_render {
  display: none;
}
.cm-header-1,
.cm-header-2,
.cm-header-3,
.cm-header-4,
.cm-header-5,
.cm-header-6 {
  font-weight: bold;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.cm-header-1 {
  font-size: 185.7%;
}
.cm-header-2 {
  font-size: 157.1%;
}
.cm-header-3 {
  font-size: 128.6%;
}
.cm-header-4 {
  font-size: 110%;
}
.cm-header-5 {
  font-size: 100%;
  font-style: italic;
}
.cm-header-6 {
  font-size: 100%;
  font-style: italic;
}
/*!
*
* IPython notebook webapp
*
*/
@media (max-width: 767px) {
  .notebook_app {
    padding-left: 0px;
    padding-right: 0px;
  }
}
#ipython-main-app {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 100%;
}
div#notebook_panel {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 100%;
}
div#notebook {
  font-size: 14px;
  line-height: 20px;
  overflow-y: hidden;
  overflow-x: auto;
  width: 100%;
  /* This spaces the page away from the edge of the notebook area */
  padding-top: 20px;
  margin: 0px;
  outline: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  min-height: 100%;
}
@media not print {
  #notebook-container {
    padding: 15px;
    background-color: #fff;
    min-height: 0;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
    box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  }
}
@media print {
  #notebook-container {
    width: 100%;
  }
}
div.ui-widget-content {
  border: 1px solid #ababab;
  outline: none;
}
pre.dialog {
  background-color: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 2px;
  padding: 0.4em;
  padding-left: 2em;
}
p.dialog {
  padding: 0.2em;
}
/* Word-wrap output correctly.  This is the CSS3 spelling, though Firefox seems
   to not honor it correctly.  Webkit browsers (Chrome, rekonq, Safari) do.
 */
pre,
code,
kbd,
samp {
  white-space: pre-wrap;
}
#fonttest {
  font-family: monospace;
}
p {
  margin-bottom: 0;
}
.end_space {
  min-height: 100px;
  transition: height .2s ease;
}
.notebook_app > #header {
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
@media not print {
  .notebook_app {
    background-color: #EEE;
  }
}
kbd {
  border-style: solid;
  border-width: 1px;
  box-shadow: none;
  margin: 2px;
  padding-left: 2px;
  padding-right: 2px;
  padding-top: 1px;
  padding-bottom: 1px;
}
/* CSS for the cell toolbar */
.celltoolbar {
  border: thin solid #CFCFCF;
  border-bottom: none;
  background: #EEE;
  border-radius: 2px 2px 0px 0px;
  width: 100%;
  height: 29px;
  padding-right: 4px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
  /* Old browsers */
  -webkit-box-pack: end;
  -moz-box-pack: end;
  box-pack: end;
  /* Modern browsers */
  justify-content: flex-end;
  display: -webkit-flex;
}
@media print {
  .celltoolbar {
    display: none;
  }
}
.ctb_hideshow {
  display: none;
  vertical-align: bottom;
}
/* ctb_show is added to the ctb_hideshow div to show the cell toolbar.
   Cell toolbars are only shown when the ctb_global_show class is also set.
*/
.ctb_global_show .ctb_show.ctb_hideshow {
  display: block;
}
.ctb_global_show .ctb_show + .input_area,
.ctb_global_show .ctb_show + div.text_cell_input,
.ctb_global_show .ctb_show ~ div.text_cell_render {
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
}
.ctb_global_show .ctb_show ~ div.text_cell_render {
  border: 1px solid #cfcfcf;
}
.celltoolbar {
  font-size: 87%;
  padding-top: 3px;
}
.celltoolbar select {
  display: block;
  width: 100%;
  height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
  width: inherit;
  font-size: inherit;
  height: 22px;
  padding: 0px;
  display: inline-block;
}
.celltoolbar select:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.celltoolbar select::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.celltoolbar select:-ms-input-placeholder {
  color: #999;
}
.celltoolbar select::-webkit-input-placeholder {
  color: #999;
}
.celltoolbar select::-ms-expand {
  border: 0;
  background-color: transparent;
}
.celltoolbar select[disabled],
.celltoolbar select[readonly],
fieldset[disabled] .celltoolbar select {
  background-color: #eeeeee;
  opacity: 1;
}
.celltoolbar select[disabled],
fieldset[disabled] .celltoolbar select {
  cursor: not-allowed;
}
textarea.celltoolbar select {
  height: auto;
}
select.celltoolbar select {
  height: 30px;
  line-height: 30px;
}
textarea.celltoolbar select,
select[multiple].celltoolbar select {
  height: auto;
}
.celltoolbar label {
  margin-left: 5px;
  margin-right: 5px;
}
.completions {
  position: absolute;
  z-index: 110;
  overflow: hidden;
  border: 1px solid #ababab;
  border-radius: 2px;
  -webkit-box-shadow: 0px 6px 10px -1px #adadad;
  box-shadow: 0px 6px 10px -1px #adadad;
  line-height: 1;
}
.completions select {
  background: white;
  outline: none;
  border: none;
  padding: 0px;
  margin: 0px;
  overflow: auto;
  font-family: monospace;
  font-size: 110%;
  color: #000;
  width: auto;
}
.completions select option.context {
  color: #286090;
}
#kernel_logo_widget {
  float: right !important;
  float: right;
}
#kernel_logo_widget .current_kernel_logo {
  display: none;
  margin-top: -1px;
  margin-bottom: -1px;
  width: 32px;
  height: 32px;
}
#menubar {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin-top: 1px;
}
#menubar .navbar {
  border-top: 1px;
  border-radius: 0px 0px 2px 2px;
  margin-bottom: 0px;
}
#menubar .navbar-toggle {
  float: left;
  padding-top: 7px;
  padding-bottom: 7px;
  border: none;
}
#menubar .navbar-collapse {
  clear: left;
}
.nav-wrapper {
  border-bottom: 1px solid #e7e7e7;
}
i.menu-icon {
  padding-top: 4px;
}
ul#help_menu li a {
  overflow: hidden;
  padding-right: 2.2em;
}
ul#help_menu li a i {
  margin-right: -1.2em;
}
.dropdown-submenu {
  position: relative;
}
.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
}
.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}
.dropdown-submenu > a:after {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  content: "\f0da";
  float: right;
  color: #333333;
  margin-top: 2px;
  margin-right: -10px;
}
.dropdown-submenu > a:after.pull-left {
  margin-right: .3em;
}
.dropdown-submenu > a:after.pull-right {
  margin-left: .3em;
}
.dropdown-submenu:hover > a:after {
  color: #262626;
}
.dropdown-submenu.pull-left {
  float: none;
}
.dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  margin-left: 10px;
}
#notification_area {
  float: right !important;
  float: right;
  z-index: 10;
}
.indicator_area {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
}
#kernel_indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
  border-left: 1px solid;
}
#kernel_indicator .kernel_indicator_name {
  padding-left: 5px;
  padding-right: 5px;
}
#modal_indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
}
#readonly-indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
  margin-top: 2px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 0px;
  display: none;
}
.modal_indicator:before {
  width: 1.28571429em;
  text-align: center;
}
.edit_mode .modal_indicator:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f040";
}
.edit_mode .modal_indicator:before.pull-left {
  margin-right: .3em;
}
.edit_mode .modal_indicator:before.pull-right {
  margin-left: .3em;
}
.command_mode .modal_indicator:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ' ';
}
.command_mode .modal_indicator:before.pull-left {
  margin-right: .3em;
}
.command_mode .modal_indicator:before.pull-right {
  margin-left: .3em;
}
.kernel_idle_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f10c";
}
.kernel_idle_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_idle_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_busy_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f111";
}
.kernel_busy_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_busy_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_dead_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f1e2";
}
.kernel_dead_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_dead_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_disconnected_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f127";
}
.kernel_disconnected_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_disconnected_icon:before.pull-right {
  margin-left: .3em;
}
.notification_widget {
  color: #777;
  z-index: 10;
  background: rgba(240, 240, 240, 0.5);
  margin-right: 4px;
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.notification_widget:focus,
.notification_widget.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.notification_widget:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.notification_widget:active:hover,
.notification_widget.active:hover,
.open > .dropdown-toggle.notification_widget:hover,
.notification_widget:active:focus,
.notification_widget.active:focus,
.open > .dropdown-toggle.notification_widget:focus,
.notification_widget:active.focus,
.notification_widget.active.focus,
.open > .dropdown-toggle.notification_widget.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
  background-image: none;
}
.notification_widget.disabled:hover,
.notification_widget[disabled]:hover,
fieldset[disabled] .notification_widget:hover,
.notification_widget.disabled:focus,
.notification_widget[disabled]:focus,
fieldset[disabled] .notification_widget:focus,
.notification_widget.disabled.focus,
.notification_widget[disabled].focus,
fieldset[disabled] .notification_widget.focus {
  background-color: #fff;
  border-color: #ccc;
}
.notification_widget .badge {
  color: #fff;
  background-color: #333;
}
.notification_widget.warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.notification_widget.warning:focus,
.notification_widget.warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.notification_widget.warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.notification_widget.warning:active:hover,
.notification_widget.warning.active:hover,
.open > .dropdown-toggle.notification_widget.warning:hover,
.notification_widget.warning:active:focus,
.notification_widget.warning.active:focus,
.open > .dropdown-toggle.notification_widget.warning:focus,
.notification_widget.warning:active.focus,
.notification_widget.warning.active.focus,
.open > .dropdown-toggle.notification_widget.warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
  background-image: none;
}
.notification_widget.warning.disabled:hover,
.notification_widget.warning[disabled]:hover,
fieldset[disabled] .notification_widget.warning:hover,
.notification_widget.warning.disabled:focus,
.notification_widget.warning[disabled]:focus,
fieldset[disabled] .notification_widget.warning:focus,
.notification_widget.warning.disabled.focus,
.notification_widget.warning[disabled].focus,
fieldset[disabled] .notification_widget.warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.notification_widget.warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.notification_widget.success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.notification_widget.success:focus,
.notification_widget.success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.notification_widget.success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.notification_widget.success:active:hover,
.notification_widget.success.active:hover,
.open > .dropdown-toggle.notification_widget.success:hover,
.notification_widget.success:active:focus,
.notification_widget.success.active:focus,
.open > .dropdown-toggle.notification_widget.success:focus,
.notification_widget.success:active.focus,
.notification_widget.success.active.focus,
.open > .dropdown-toggle.notification_widget.success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
  background-image: none;
}
.notification_widget.success.disabled:hover,
.notification_widget.success[disabled]:hover,
fieldset[disabled] .notification_widget.success:hover,
.notification_widget.success.disabled:focus,
.notification_widget.success[disabled]:focus,
fieldset[disabled] .notification_widget.success:focus,
.notification_widget.success.disabled.focus,
.notification_widget.success[disabled].focus,
fieldset[disabled] .notification_widget.success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.notification_widget.success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.notification_widget.info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.notification_widget.info:focus,
.notification_widget.info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.notification_widget.info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.notification_widget.info:active:hover,
.notification_widget.info.active:hover,
.open > .dropdown-toggle.notification_widget.info:hover,
.notification_widget.info:active:focus,
.notification_widget.info.active:focus,
.open > .dropdown-toggle.notification_widget.info:focus,
.notification_widget.info:active.focus,
.notification_widget.info.active.focus,
.open > .dropdown-toggle.notification_widget.info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
  background-image: none;
}
.notification_widget.info.disabled:hover,
.notification_widget.info[disabled]:hover,
fieldset[disabled] .notification_widget.info:hover,
.notification_widget.info.disabled:focus,
.notification_widget.info[disabled]:focus,
fieldset[disabled] .notification_widget.info:focus,
.notification_widget.info.disabled.focus,
.notification_widget.info[disabled].focus,
fieldset[disabled] .notification_widget.info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.notification_widget.info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.notification_widget.danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.notification_widget.danger:focus,
.notification_widget.danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.notification_widget.danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.notification_widget.danger:active:hover,
.notification_widget.danger.active:hover,
.open > .dropdown-toggle.notification_widget.danger:hover,
.notification_widget.danger:active:focus,
.notification_widget.danger.active:focus,
.open > .dropdown-toggle.notification_widget.danger:focus,
.notification_widget.danger:active.focus,
.notification_widget.danger.active.focus,
.open > .dropdown-toggle.notification_widget.danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
  background-image: none;
}
.notification_widget.danger.disabled:hover,
.notification_widget.danger[disabled]:hover,
fieldset[disabled] .notification_widget.danger:hover,
.notification_widget.danger.disabled:focus,
.notification_widget.danger[disabled]:focus,
fieldset[disabled] .notification_widget.danger:focus,
.notification_widget.danger.disabled.focus,
.notification_widget.danger[disabled].focus,
fieldset[disabled] .notification_widget.danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.notification_widget.danger .badge {
  color: #d9534f;
  background-color: #fff;
}
div#pager {
  background-color: #fff;
  font-size: 14px;
  line-height: 20px;
  overflow: hidden;
  display: none;
  position: fixed;
  bottom: 0px;
  width: 100%;
  max-height: 50%;
  padding-top: 8px;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  /* Display over codemirror */
  z-index: 100;
  /* Hack which prevents jquery ui resizable from changing top. */
  top: auto !important;
}
div#pager pre {
  line-height: 1.21429em;
  color: #000;
  background-color: #f7f7f7;
  padding: 0.4em;
}
div#pager #pager-button-area {
  position: absolute;
  top: 8px;
  right: 20px;
}
div#pager #pager-contents {
  position: relative;
  overflow: auto;
  width: 100%;
  height: 100%;
}
div#pager #pager-contents #pager-container {
  position: relative;
  padding: 15px 0px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
div#pager .ui-resizable-handle {
  top: 0px;
  height: 8px;
  background: #f7f7f7;
  border-top: 1px solid #cfcfcf;
  border-bottom: 1px solid #cfcfcf;
  /* This injects handle bars (a short, wide = symbol) for 
        the resize handle. */
}
div#pager .ui-resizable-handle::after {
  content: '';
  top: 2px;
  left: 50%;
  height: 3px;
  width: 30px;
  margin-left: -15px;
  position: absolute;
  border-top: 1px solid #cfcfcf;
}
.quickhelp {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
  line-height: 1.8em;
}
.shortcut_key {
  display: inline-block;
  width: 20ex;
  text-align: right;
  font-family: monospace;
}
.shortcut_descr {
  display: inline-block;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
span.save_widget {
  margin-top: 6px;
}
span.save_widget span.filename {
  height: 1em;
  line-height: 1em;
  padding: 3px;
  margin-left: 16px;
  border: none;
  font-size: 146.5%;
  border-radius: 2px;
}
span.save_widget span.filename:hover {
  background-color: #e6e6e6;
}
span.checkpoint_status,
span.autosave_status {
  font-size: small;
}
@media (max-width: 767px) {
  span.save_widget {
    font-size: small;
  }
  span.checkpoint_status,
  span.autosave_status {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  span.checkpoint_status {
    display: none;
  }
  span.autosave_status {
    font-size: x-small;
  }
}
.toolbar {
  padding: 0px;
  margin-left: -5px;
  margin-top: 2px;
  margin-bottom: 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.toolbar select,
.toolbar label {
  width: auto;
  vertical-align: middle;
  margin-right: 2px;
  margin-bottom: 0px;
  display: inline;
  font-size: 92%;
  margin-left: 0.3em;
  margin-right: 0.3em;
  padding: 0px;
  padding-top: 3px;
}
.toolbar .btn {
  padding: 2px 8px;
}
.toolbar .btn-group {
  margin-top: 0px;
  margin-left: 5px;
}
#maintoolbar {
  margin-bottom: -3px;
  margin-top: -8px;
  border: 0px;
  min-height: 27px;
  margin-left: 0px;
  padding-top: 11px;
  padding-bottom: 3px;
}
#maintoolbar .navbar-text {
  float: none;
  vertical-align: middle;
  text-align: right;
  margin-left: 5px;
  margin-right: 0px;
  margin-top: 0px;
}
.select-xs {
  height: 24px;
}
.pulse,
.dropdown-menu > li > a.pulse,
li.pulse > a.dropdown-toggle,
li.pulse.open > a.dropdown-toggle {
  background-color: #F37626;
  color: white;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
/** WARNING IF YOU ARE EDITTING THIS FILE, if this is a .css file, It has a lot
 * of chance of beeing generated from the ../less/[samename].less file, you can
 * try to get back the less file by reverting somme commit in history
 **/
/*
 * We'll try to get something pretty, so we
 * have some strange css to have the scroll bar on
 * the left with fix button on the top right of the tooltip
 */
@-moz-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*properties of tooltip after "expand"*/
.bigtooltip {
  overflow: auto;
  height: 200px;
  -webkit-transition-property: height;
  -webkit-transition-duration: 500ms;
  -moz-transition-property: height;
  -moz-transition-duration: 500ms;
  transition-property: height;
  transition-duration: 500ms;
}
/*properties of tooltip before "expand"*/
.smalltooltip {
  -webkit-transition-property: height;
  -webkit-transition-duration: 500ms;
  -moz-transition-property: height;
  -moz-transition-duration: 500ms;
  transition-property: height;
  transition-duration: 500ms;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 80px;
}
.tooltipbuttons {
  position: absolute;
  padding-right: 15px;
  top: 0px;
  right: 0px;
}
.tooltiptext {
  /*avoid the button to overlap on some docstring*/
  padding-right: 30px;
}
.ipython_tooltip {
  max-width: 700px;
  /*fade-in animation when inserted*/
  -webkit-animation: fadeOut 400ms;
  -moz-animation: fadeOut 400ms;
  animation: fadeOut 400ms;
  -webkit-animation: fadeIn 400ms;
  -moz-animation: fadeIn 400ms;
  animation: fadeIn 400ms;
  vertical-align: middle;
  background-color: #f7f7f7;
  overflow: visible;
  border: #ababab 1px solid;
  outline: none;
  padding: 3px;
  margin: 0px;
  padding-left: 7px;
  font-family: monospace;
  min-height: 50px;
  -moz-box-shadow: 0px 6px 10px -1px #adadad;
  -webkit-box-shadow: 0px 6px 10px -1px #adadad;
  box-shadow: 0px 6px 10px -1px #adadad;
  border-radius: 2px;
  position: absolute;
  z-index: 1000;
}
.ipython_tooltip a {
  float: right;
}
.ipython_tooltip .tooltiptext pre {
  border: 0;
  border-radius: 0;
  font-size: 100%;
  background-color: #f7f7f7;
}
.pretooltiparrow {
  left: 0px;
  margin: 0px;
  top: -16px;
  width: 40px;
  height: 16px;
  overflow: hidden;
  position: absolute;
}
.pretooltiparrow:before {
  background-color: #f7f7f7;
  border: 1px #ababab solid;
  z-index: 11;
  content: "";
  position: absolute;
  left: 15px;
  top: 10px;
  width: 25px;
  height: 25px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}
ul.typeahead-list i {
  margin-left: -10px;
  width: 18px;
}
ul.typeahead-list {
  max-height: 80vh;
  overflow: auto;
}
ul.typeahead-list > li > a {
  /** Firefox bug **/
  /* see https://github.com/jupyter/notebook/issues/559 */
  white-space: normal;
}
.cmd-palette .modal-body {
  padding: 7px;
}
.cmd-palette form {
  background: white;
}
.cmd-palette input {
  outline: none;
}
.no-shortcut {
  display: none;
}
.command-shortcut:before {
  content: "(command)";
  padding-right: 3px;
  color: #777777;
}
.edit-shortcut:before {
  content: "(edit)";
  padding-right: 3px;
  color: #777777;
}
#find-and-replace #replace-preview .match,
#find-and-replace #replace-preview .insert {
  background-color: #BBDEFB;
  border-color: #90CAF9;
  border-style: solid;
  border-width: 1px;
  border-radius: 0px;
}
#find-and-replace #replace-preview .replace .match {
  background-color: #FFCDD2;
  border-color: #EF9A9A;
  border-radius: 0px;
}
#find-and-replace #replace-preview .replace .insert {
  background-color: #C8E6C9;
  border-color: #A5D6A7;
  border-radius: 0px;
}
#find-and-replace #replace-preview {
  max-height: 60vh;
  overflow: auto;
}
#find-and-replace #replace-preview pre {
  padding: 5px 10px;
}
.terminal-app {
  background: #EEE;
}
.terminal-app #header {
  background: #fff;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.terminal-app .terminal {
  float: left;
  font-family: monospace;
  color: white;
  background: black;
  padding: 0.4em;
  border-radius: 2px;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
}
.terminal-app .terminal,
.terminal-app .terminal dummy-screen {
  line-height: 1em;
  font-size: 14px;
}
.terminal-app .terminal-cursor {
  color: black;
  background: white;
}
.terminal-app #terminado-container {
  margin-top: 20px;
}
/*# sourceMappingURL=style.min.css.map */
    </style>
<style type="text/css">
    .highlight .hll { background-color: #ffffcc }
.highlight  { background: #f8f8f8; }
.highlight .c { color: #408080; font-style: italic } /* Comment */
.highlight .err { border: 1px solid #FF0000 } /* Error */
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
.highlight .o { color: #666666 } /* Operator */
.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #BC7A00 } /* Comment.Preproc */
.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */
.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */
.highlight .gd { color: #A00000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #FF0000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #00A000 } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #0044DD } /* Generic.Traceback */
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #B00040 } /* Keyword.Type */
.highlight .m { color: #666666 } /* Literal.Number */
.highlight .s { color: #BA2121 } /* Literal.String */
.highlight .na { color: #7D9029 } /* Name.Attribute */
.highlight .nb { color: #008000 } /* Name.Builtin */
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.highlight .no { color: #880000 } /* Name.Constant */
.highlight .nd { color: #AA22FF } /* Name.Decorator */
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0000FF } /* Name.Function */
.highlight .nl { color: #A0A000 } /* Name.Label */
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #19177C } /* Name.Variable */
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
.highlight .mf { color: #666666 } /* Literal.Number.Float */
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.highlight .sx { color: #008000 } /* Literal.String.Other */
.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #19177C } /* Name.Variable.Class */
.highlight .vg { color: #19177C } /* Name.Variable.Global */
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
    </style>
<style type="text/css">
    
/* Temporary definitions which will become obsolete with Notebook release 5.0 */
.ansi-black-fg { color: #3E424D; }
.ansi-black-bg { background-color: #3E424D; }
.ansi-black-intense-fg { color: #282C36; }
.ansi-black-intense-bg { background-color: #282C36; }
.ansi-red-fg { color: #E75C58; }
.ansi-red-bg { background-color: #E75C58; }
.ansi-red-intense-fg { color: #B22B31; }
.ansi-red-intense-bg { background-color: #B22B31; }
.ansi-green-fg { color: #00A250; }
.ansi-green-bg { background-color: #00A250; }
.ansi-green-intense-fg { color: #007427; }
.ansi-green-intense-bg { background-color: #007427; }
.ansi-yellow-fg { color: #DDB62B; }
.ansi-yellow-bg { background-color: #DDB62B; }
.ansi-yellow-intense-fg { color: #B27D12; }
.ansi-yellow-intense-bg { background-color: #B27D12; }
.ansi-blue-fg { color: #208FFB; }
.ansi-blue-bg { background-color: #208FFB; }
.ansi-blue-intense-fg { color: #0065CA; }
.ansi-blue-intense-bg { background-color: #0065CA; }
.ansi-magenta-fg { color: #D160C4; }
.ansi-magenta-bg { background-color: #D160C4; }
.ansi-magenta-intense-fg { color: #A03196; }
.ansi-magenta-intense-bg { background-color: #A03196; }
.ansi-cyan-fg { color: #60C6C8; }
.ansi-cyan-bg { background-color: #60C6C8; }
.ansi-cyan-intense-fg { color: #258F8F; }
.ansi-cyan-intense-bg { background-color: #258F8F; }
.ansi-white-fg { color: #C5C1B4; }
.ansi-white-bg { background-color: #C5C1B4; }
.ansi-white-intense-fg { color: #A1A6B2; }
.ansi-white-intense-bg { background-color: #A1A6B2; }

.ansi-bold { font-weight: bold; }

    </style>


<style type="text/css">
/* Overrides of notebook CSS for static HTML export */
body {
  overflow: visible;
  padding: 8px;
}

div#notebook {
  overflow: visible;
  border-top: none;
}

@media print {
  div.cell {
    display: block;
    page-break-inside: avoid;
  } 
  div.output_wrapper { 
    display: block;
    page-break-inside: avoid; 
  }
  div.output { 
    display: block;
    page-break-inside: avoid; 
  }
}
</style>

<!-- Custom stylesheet, it must be in the same directory as the html file -->
<link rel="stylesheet" href="custom.css">

<!-- Loading mathjax macro -->
<!-- Load mathjax -->
    <script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML"></script>
    <!-- MathJax configuration -->
    <script type="text/x-mathjax-config">
    MathJax.Hub.Config({
        tex2jax: {
            inlineMath: [ ['$','$'], ["\\(","\\)"] ],
            displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
            processEscapes: true,
            processEnvironments: true
        },
        // Center justify equations in code and markdown cells. Elsewhere
        // we use CSS to left justify single line equations in code cells.
        displayAlign: 'center',
        "HTML-CSS": {
            styles: {'.MathJax_Display': {"margin": 0}},
            linebreaks: { automatic: true }
        }
    });
    </script>
    <!-- End of mathjax configuration --></head>
<body>
  <div tabindex="-1" id="notebook" class="border-box-sizing">
    <div class="container" id="notebook-container">

<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[85]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">import</span> <span class="nn">sklearn</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>

<span class="n">credit</span><span class="o">=</span><span class="n">pd</span><span class="o">.</span><span class="n">read_csv</span><span class="p">(</span><span class="s2">&quot;Credit.csv&quot;</span><span class="p">)</span>
<span class="n">credit</span><span class="o">.</span><span class="n">head</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[85]:</div>

<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<style>
    .dataframe thead tr:only-child th {
        text-align: right;
    }

    .dataframe thead th {
        text-align: left;
    }

    .dataframe tbody tr th {
        vertical-align: top;
    }
</style>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>ID</th>
      <th>LIMIT_BAL</th>
      <th>SEX</th>
      <th>EDUCATION</th>
      <th>MARRIAGE</th>
      <th>AGE</th>
      <th>PAY_0</th>
      <th>PAY_2</th>
      <th>PAY_3</th>
      <th>PAY_4</th>
      <th>...</th>
      <th>BILL_AMT4</th>
      <th>BILL_AMT5</th>
      <th>BILL_AMT6</th>
      <th>PAY_AMT1</th>
      <th>PAY_AMT2</th>
      <th>PAY_AMT3</th>
      <th>PAY_AMT4</th>
      <th>PAY_AMT5</th>
      <th>PAY_AMT6</th>
      <th>default.payment.next.month</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td>1</td>
      <td>20000.0</td>
      <td>2</td>
      <td>2</td>
      <td>1</td>
      <td>24</td>
      <td>2</td>
      <td>2</td>
      <td>-1</td>
      <td>-1</td>
      <td>...</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>689.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>1</th>
      <td>2</td>
      <td>120000.0</td>
      <td>2</td>
      <td>2</td>
      <td>2</td>
      <td>26</td>
      <td>-1</td>
      <td>2</td>
      <td>0</td>
      <td>0</td>
      <td>...</td>
      <td>3272.0</td>
      <td>3455.0</td>
      <td>3261.0</td>
      <td>0.0</td>
      <td>1000.0</td>
      <td>1000.0</td>
      <td>1000.0</td>
      <td>0.0</td>
      <td>2000.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>2</th>
      <td>3</td>
      <td>90000.0</td>
      <td>2</td>
      <td>2</td>
      <td>2</td>
      <td>34</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>...</td>
      <td>14331.0</td>
      <td>14948.0</td>
      <td>15549.0</td>
      <td>1518.0</td>
      <td>1500.0</td>
      <td>1000.0</td>
      <td>1000.0</td>
      <td>1000.0</td>
      <td>5000.0</td>
      <td>0</td>
    </tr>
    <tr>
      <th>3</th>
      <td>4</td>
      <td>50000.0</td>
      <td>2</td>
      <td>2</td>
      <td>1</td>
      <td>37</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>...</td>
      <td>28314.0</td>
      <td>28959.0</td>
      <td>29547.0</td>
      <td>2000.0</td>
      <td>2019.0</td>
      <td>1200.0</td>
      <td>1100.0</td>
      <td>1069.0</td>
      <td>1000.0</td>
      <td>0</td>
    </tr>
    <tr>
      <th>4</th>
      <td>5</td>
      <td>50000.0</td>
      <td>1</td>
      <td>2</td>
      <td>1</td>
      <td>57</td>
      <td>-1</td>
      <td>0</td>
      <td>-1</td>
      <td>0</td>
      <td>...</td>
      <td>20940.0</td>
      <td>19146.0</td>
      <td>19131.0</td>
      <td>2000.0</td>
      <td>36681.0</td>
      <td>10000.0</td>
      <td>9000.0</td>
      <td>689.0</td>
      <td>679.0</td>
      <td>0</td>
    </tr>
  </tbody>
</table>
<p>5 rows × 25 columns</p>
</div>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[86]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#We don&#39;t need the ID column,so lets drop it.</span>
<span class="n">credit</span> <span class="o">=</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">([</span><span class="s2">&quot;ID&quot;</span><span class="p">],</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[87]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#changing the name of  pay_0 column to pay_1 to make the numbering correct</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[88]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">credit</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="n">columns</span><span class="o">=</span><span class="p">{</span><span class="s1">&#39;PAY_0&#39;</span><span class="p">:</span><span class="s1">&#39;PAY_1&#39;</span><span class="p">},</span> <span class="n">inplace</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[89]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">credit</span><span class="o">.</span><span class="n">head</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[89]:</div>

<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<style>
    .dataframe thead tr:only-child th {
        text-align: right;
    }

    .dataframe thead th {
        text-align: left;
    }

    .dataframe tbody tr th {
        vertical-align: top;
    }
</style>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>LIMIT_BAL</th>
      <th>SEX</th>
      <th>EDUCATION</th>
      <th>MARRIAGE</th>
      <th>AGE</th>
      <th>PAY_1</th>
      <th>PAY_2</th>
      <th>PAY_3</th>
      <th>PAY_4</th>
      <th>PAY_5</th>
      <th>...</th>
      <th>BILL_AMT4</th>
      <th>BILL_AMT5</th>
      <th>BILL_AMT6</th>
      <th>PAY_AMT1</th>
      <th>PAY_AMT2</th>
      <th>PAY_AMT3</th>
      <th>PAY_AMT4</th>
      <th>PAY_AMT5</th>
      <th>PAY_AMT6</th>
      <th>default.payment.next.month</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td>20000.0</td>
      <td>2</td>
      <td>2</td>
      <td>1</td>
      <td>24</td>
      <td>2</td>
      <td>2</td>
      <td>-1</td>
      <td>-1</td>
      <td>-2</td>
      <td>...</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>689.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>0.0</td>
      <td>1</td>
    </tr>
  </tbody>
</table>
<p>1 rows × 24 columns</p>
</div>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[90]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Removing Unwanted categorical levels as mentioned in data exploration</span>
<span class="n">credit</span><span class="p">[</span><span class="s1">&#39;EDUCATION&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">value_counts</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[90]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>2    14030
1    10585
3     4917
5      280
4      123
6       51
0       14
Name: EDUCATION, dtype: int64</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[91]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Changing Education levels 0,5,6 to others(4)</span>
<span class="n">credit</span><span class="p">[</span><span class="s2">&quot;EDUCATION&quot;</span><span class="p">]</span><span class="o">=</span><span class="n">credit</span><span class="p">[</span><span class="s2">&quot;EDUCATION&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">map</span><span class="p">({</span><span class="mi">0</span><span class="p">:</span><span class="mi">4</span><span class="p">,</span><span class="mi">1</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">:</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">:</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">:</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">:</span><span class="mi">4</span><span class="p">,</span><span class="mi">6</span><span class="p">:</span><span class="mi">4</span><span class="p">})</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[92]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">credit</span><span class="p">[</span><span class="s1">&#39;EDUCATION&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">value_counts</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[92]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>2    14030
1    10585
3     4917
4      468
Name: EDUCATION, dtype: int64</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[93]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">credit</span><span class="p">[</span><span class="s1">&#39;MARRIAGE&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">value_counts</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[93]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>2    15964
1    13659
3      323
0       54
Name: MARRIAGE, dtype: int64</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[94]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#similarly chaning marriage level 0 to level 3</span>
<span class="n">credit</span><span class="p">[</span><span class="s2">&quot;MARRIAGE&quot;</span><span class="p">]</span><span class="o">=</span><span class="n">credit</span><span class="p">[</span><span class="s2">&quot;MARRIAGE&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">map</span><span class="p">({</span><span class="mi">0</span><span class="p">:</span><span class="mi">3</span><span class="p">,</span><span class="mi">1</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">:</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">:</span><span class="mi">3</span><span class="p">})</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[95]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">credit</span><span class="p">[</span><span class="s1">&#39;MARRIAGE&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">value_counts</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[95]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>2    15964
1    13659
3      377
Name: MARRIAGE, dtype: int64</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[96]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#lets check which features are important</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">ExtraTreesClassifier</span>
<span class="kn">from</span> <span class="nn">sklearn.datasets</span> <span class="k">import</span> <span class="n">load_iris</span>
<span class="kn">from</span> <span class="nn">sklearn.feature_selection</span> <span class="k">import</span> <span class="n">SelectFromModel</span>
<span class="n">X</span> <span class="o">=</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
<span class="n">Y</span> <span class="o">=</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">]</span>
<span class="n">clf</span> <span class="o">=</span> <span class="n">ExtraTreesClassifier</span><span class="p">()</span>
<span class="n">clf</span> <span class="o">=</span> <span class="n">clf</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X</span><span class="p">,</span> <span class="n">Y</span><span class="p">)</span>
<span class="n">clf</span><span class="o">.</span><span class="n">feature_importances_</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[96]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>array([ 0.06673129,  0.01107916,  0.03071698,  0.01828816,  0.06729232,
        0.10502206,  0.04590552,  0.03639505,  0.02706571,  0.02889421,
        0.02720425,  0.05080295,  0.04753515,  0.04445718,  0.04384626,
        0.04408402,  0.04320006,  0.04511946,  0.042764  ,  0.04264839,
        0.04227342,  0.04214917,  0.04652524])</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[97]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Feature Scaling</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[98]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="o">%</span><span class="k">matplotlib</span> inline
<span class="c1">#feature scaling check</span>
<span class="n">credit</span><span class="p">[</span><span class="s1">&#39;BILL_AMT1&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">bins</span><span class="o">=</span><span class="mi">60</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">&#39;orange&#39;</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[98]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>&lt;matplotlib.axes._subplots.AxesSubplot at 0x21fe2edd5c0&gt;</pre>
</div>

</div>

<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[99]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">sklearn.preprocessing</span> <span class="k">import</span> <span class="n">MinMaxScaler</span>

<span class="n">scaler</span> <span class="o">=</span> <span class="n">MinMaxScaler</span><span class="p">()</span>
<span class="n">scaler</span><span class="o">.</span><span class="n">fit_transform</span><span class="p">(</span><span class="n">credit</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[99]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>array([[ 0.01010101,  1.        ,  0.33333333, ...,  0.        ,
         0.        ,  1.        ],
       [ 0.11111111,  1.        ,  0.33333333, ...,  0.        ,
         0.00378311,  1.        ],
       [ 0.08080808,  1.        ,  0.33333333, ...,  0.00234451,
         0.00945777,  0.        ],
       ..., 
       [ 0.02020202,  0.        ,  0.33333333, ...,  0.00468901,
         0.00586382,  1.        ],
       [ 0.07070707,  0.        ,  0.66666667, ...,  0.12417444,
         0.00341236,  1.        ],
       [ 0.04040404,  0.        ,  0.33333333, ...,  0.00234451,
         0.00189155,  1.        ]])</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[100]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#check for null values</span>
<span class="n">credit</span><span class="o">.</span><span class="n">apply</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="nb">sum</span><span class="p">(</span><span class="n">x</span><span class="o">.</span><span class="n">isnull</span><span class="p">()),</span><span class="n">axis</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[100]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>LIMIT_BAL                     0
SEX                           0
EDUCATION                     0
MARRIAGE                      0
AGE                           0
PAY_1                         0
PAY_2                         0
PAY_3                         0
PAY_4                         0
PAY_5                         0
PAY_6                         0
BILL_AMT1                     0
BILL_AMT2                     0
BILL_AMT3                     0
BILL_AMT4                     0
BILL_AMT5                     0
BILL_AMT6                     0
PAY_AMT1                      0
PAY_AMT2                      0
PAY_AMT3                      0
PAY_AMT4                      0
PAY_AMT5                      0
PAY_AMT6                      0
default.payment.next.month    0
dtype: int64</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[101]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Initial Model training(except feed forward neural network)</span>
<span class="kn">from</span> <span class="nn">sklearn.model_selection</span> <span class="k">import</span> <span class="n">train_test_split</span>

<span class="n">train</span><span class="p">,</span> <span class="n">test</span> <span class="o">=</span> <span class="n">train_test_split</span><span class="p">(</span><span class="n">credit</span><span class="p">,</span> <span class="n">test_size</span> <span class="o">=</span> <span class="mf">0.3</span><span class="p">)</span>

<span class="n">X_train</span> <span class="o">=</span> <span class="n">train</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>

<span class="n">y_train</span> <span class="o">=</span> <span class="n">train</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">]</span>

<span class="n">X_test</span> <span class="o">=</span>  <span class="n">test</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>

<span class="n">y_test</span> <span class="o">=</span> <span class="n">test</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">]</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[102]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Train benchmark model(Log Regression)</span>
<span class="kn">from</span> <span class="nn">sklearn.linear_model</span> <span class="k">import</span> <span class="n">LogisticRegression</span>
<span class="n">clf0</span> <span class="o">=</span> <span class="n">LogisticRegression</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf0</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span> <span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[102]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
          intercept_scaling=1, max_iter=100, multi_class=&#39;ovr&#39;, n_jobs=1,
          penalty=&#39;l2&#39;, random_state=10, solver=&#39;liblinear&#39;, tol=0.0001,
          verbose=0, warm_start=False)</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[103]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">accuracy_score</span>
<span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">recall_score</span>
<span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">precision_score</span>
<span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">f1_score</span>
<span class="n">y_pred</span> <span class="o">=</span> <span class="n">clf0</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_regr</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred</span><span class="p">)</span>
<span class="n">precision_regr</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_regr</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_regr</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_pred</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_regr</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_regr</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_regr</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_regr</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.777
Precision: 0.603729
Recall: 0.777
f1_score: 0.679492402926
</pre>
</div>
</div>

<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stderr output_text">
<pre>C:\ProgramData\Anaconda3\lib\site-packages\sklearn\metrics\classification.py:1135: UndefinedMetricWarning: Precision is ill-defined and being set to 0.0 in labels with no predicted samples.
  &#39;precision&#39;, &#39;predicted&#39;, average, warn_for)
C:\ProgramData\Anaconda3\lib\site-packages\sklearn\metrics\classification.py:1135: UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples.
  &#39;precision&#39;, &#39;predicted&#39;, average, warn_for)
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[104]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Train other classifiers</span>
<span class="c1">#We start with randomforest</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">RandomForestClassifier</span>
<span class="n">clf1</span><span class="o">=</span><span class="n">RandomForestClassifier</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf1</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[104]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>RandomForestClassifier(bootstrap=True, class_weight=None, criterion=&#39;gini&#39;,
            max_depth=None, max_features=&#39;auto&#39;, max_leaf_nodes=None,
            min_impurity_decrease=0.0, min_impurity_split=None,
            min_samples_leaf=1, min_samples_split=2,
            min_weight_fraction_leaf=0.0, n_estimators=10, n_jobs=1,
            oob_score=False, random_state=10, verbose=0, warm_start=False)</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[105]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_pred1</span> <span class="o">=</span> <span class="n">clf1</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_rf</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred1</span><span class="p">)</span>
<span class="n">precision_rf</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred1</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_rf</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred1</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_rf</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_pred1</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_rf</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_rf</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_rf</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_rf</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.807222222222
Precision: 0.785871777618
Recall: 0.807222222222
f1_score: 0.783502576417
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[106]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#gradeint boost</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">GradientBoostingClassifier</span>
<span class="n">clf2</span><span class="o">=</span><span class="n">GradientBoostingClassifier</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf2</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[106]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>GradientBoostingClassifier(criterion=&#39;friedman_mse&#39;, init=None,
              learning_rate=0.1, loss=&#39;deviance&#39;, max_depth=3,
              max_features=None, max_leaf_nodes=None,
              min_impurity_decrease=0.0, min_impurity_split=None,
              min_samples_leaf=1, min_samples_split=2,
              min_weight_fraction_leaf=0.0, n_estimators=100,
              presort=&#39;auto&#39;, random_state=10, subsample=1.0, verbose=0,
              warm_start=False)</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[107]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_pred2</span> <span class="o">=</span> <span class="n">clf2</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_gb</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred2</span><span class="p">)</span>
<span class="n">precision_gb</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred2</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_gb</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred2</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_gb</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_pred2</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_gb</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_gb</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_gb</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_gb</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.821444444444
Precision: 0.805451059511
Recall: 0.821444444444
f1_score: 0.800503291948
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[108]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#adaboost</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">AdaBoostClassifier</span>
<span class="n">clf3</span> <span class="o">=</span> <span class="n">AdaBoostClassifier</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf3</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span> <span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[108]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>AdaBoostClassifier(algorithm=&#39;SAMME.R&#39;, base_estimator=None,
          learning_rate=1.0, n_estimators=50, random_state=10)</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[109]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_pred3</span> <span class="o">=</span> <span class="n">clf3</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_ab</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred3</span><span class="p">)</span>
<span class="n">precision_ab</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred3</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_ab</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred3</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_ab</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_pred3</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_ab</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_ab</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_ab</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_ab</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.818555555556
Precision: 0.802242885074
Recall: 0.818555555556
f1_score: 0.793428250173
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[110]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#voting classifier</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">VotingClassifier</span>
<span class="n">clf4</span> <span class="o">=</span> <span class="n">VotingClassifier</span><span class="p">(</span><span class="n">estimators</span><span class="o">=</span><span class="p">[(</span><span class="s1">&#39;rf&#39;</span><span class="p">,</span><span class="n">clf1</span><span class="p">),(</span><span class="s1">&#39;gb&#39;</span><span class="p">,</span> <span class="n">clf2</span><span class="p">),(</span><span class="s1">&#39;ab&#39;</span><span class="p">,</span><span class="n">clf3</span><span class="p">)])</span>
<span class="n">clf4</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[110]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>VotingClassifier(estimators=[(&#39;rf&#39;, RandomForestClassifier(bootstrap=True, class_weight=None, criterion=&#39;gini&#39;,
            max_depth=None, max_features=&#39;auto&#39;, max_leaf_nodes=None,
            min_impurity_decrease=0.0, min_impurity_split=None,
            min_samples_leaf=1, min_samples_split=2,
            min_we...thm=&#39;SAMME.R&#39;, base_estimator=None,
          learning_rate=1.0, n_estimators=50, random_state=10))],
         flatten_transform=None, n_jobs=1, voting=&#39;hard&#39;, weights=None)</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[111]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_pred4</span> <span class="o">=</span> <span class="n">clf4</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_vc</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred4</span><span class="p">)</span>
<span class="n">precision_vc</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred4</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_vc</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_pred4</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_vc</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_pred4</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_vc</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_vc</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_vc</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_vc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.819777777778
Precision: 0.803495820308
Recall: 0.819777777778
f1_score: 0.79663926916
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[112]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#appending all socres</span>
<span class="n">arraycuracy</span><span class="o">=</span><span class="p">[]</span>
<span class="n">arraycuracy</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">accuracy_regr</span><span class="p">)</span>
<span class="n">arraycuracy</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">accuracy_rf</span><span class="p">)</span>
<span class="n">arraycuracy</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">accuracy_gb</span><span class="p">)</span>
<span class="n">arraycuracy</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">accuracy_ab</span><span class="p">)</span>
<span class="n">arraycuracy</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">accuracy_vc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[113]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">precisionray</span><span class="o">=</span><span class="p">[]</span>
<span class="n">precisionray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">precision_regr</span><span class="p">)</span>
<span class="n">precisionray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">precision_rf</span><span class="p">)</span>
<span class="n">precisionray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">precision_gb</span><span class="p">)</span>
<span class="n">precisionray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">precision_ab</span><span class="p">)</span>
<span class="n">precisionray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">precision_vc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[114]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">recallray</span><span class="o">=</span><span class="p">[]</span>
<span class="n">recallray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">recall_regr</span><span class="p">)</span>
<span class="n">recallray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">recall_rf</span><span class="p">)</span>
<span class="n">recallray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">recall_gb</span><span class="p">)</span>
<span class="n">recallray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">recall_ab</span><span class="p">)</span>
<span class="n">recallray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">recall_vc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[115]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">f1ray</span><span class="o">=</span><span class="p">[]</span>
<span class="n">f1ray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">f1_regr</span><span class="p">)</span>
<span class="n">f1ray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">f1_rf</span><span class="p">)</span>
<span class="n">f1ray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">f1_gb</span><span class="p">)</span>
<span class="n">f1ray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">f1_ab</span><span class="p">)</span>
<span class="n">f1ray</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">f1_vc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[116]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Lets compare Accuracy,precison,racall</span>
<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span>
<span class="n">classifier_names</span><span class="o">=</span><span class="p">(</span><span class="s1">&#39;Log_reg&#39;</span><span class="p">,</span><span class="s1">&#39;random_forst&#39;</span><span class="p">,</span><span class="s1">&#39;grad_boost&#39;</span><span class="p">,</span><span class="s1">&#39;adaboost&#39;</span><span class="p">,</span><span class="s1">&#39;voting_class&#39;</span><span class="p">)</span>
<span class="n">y_axis</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">classifier_names</span><span class="p">))</span>
<span class="n">plt</span><span class="o">.</span><span class="n">bar</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span> <span class="n">arraycuracy</span><span class="p">,</span> <span class="n">alpha</span><span class="o">=</span><span class="mf">0.4</span><span class="p">,</span><span class="n">color</span><span class="o">=</span><span class="s1">&#39;navy&#39;</span><span class="p">,</span><span class="n">ecolor</span><span class="o">=</span><span class="s1">&#39;navy&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xticks</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span> <span class="n">classifier_names</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s1">&#39;Accuracy Scores&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s1">&#39;Classifier comparison wrt Accuracy&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[117]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_axis</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">classifier_names</span><span class="p">))</span>
<span class="n">plt</span><span class="o">.</span><span class="n">bar</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span><span class="n">precisionray</span><span class="p">,</span> <span class="n">alpha</span><span class="o">=</span><span class="mf">0.4</span><span class="p">,</span><span class="n">color</span><span class="o">=</span><span class="s1">&#39;purple&#39;</span><span class="p">,</span><span class="n">ecolor</span><span class="o">=</span><span class="s1">&#39;darkgreen&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xticks</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span> <span class="n">classifier_names</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s1">&#39;Precision Scores&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s1">&#39;Classifier comparison wrt Precision&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
AAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xu4HWV59/HvzxAIkZOSYCUkJECAwgtB2JxUalq0JioC
lZaAh0rVvGmlYD1BW2tjsa14ej0AphFCpFBpqYIRUkGoAsopB0NCgGAMwSQghrPhlITc7x/PsyfD
Yq21Zyd79spOfp/rWteaw7OeuWfWrLlnnpk1o4jAzMwM4FWdDsDMzLYcTgpmZlZwUjAzs4KTgpmZ
FZwUzMys4KRgZmYFJ4WtiKSpki6vsf7Fksbnbkm6VNKTku6SdJykJXVNe6CQtEbSPp2OY6Cpsty8
jvWP7TodgPWOpNOBjwMHAr8DFgD/HBE/q3vaEXFwqffNwNuAvSLi2TzsgLpj2NJFxE6djqEqSTOB
lRHxmTZlAngOCOBp4D+BT0XES30ZS5XlFhG34nWsdj5SGEAkfRz4GvAvwOuAUcCFwLs7EM7ewPJS
Qthkkgb8zslAmwdJg3pRfFzeaB8PnA58pEl9A2r+rY2I8GsAvIBdgTXAn7YpMxW4vNR/FfAb0h7e
LcDBpXHvAO4lHW2sAj6Zhw8DrgWeAp4AbgVelcctB94KfAh4AXgpx/Q5YDxpr7O7/j2B7wGrgQeB
sxri/G/gcuAZ4MNN5mVH4CvAQzn+nwE75nHvBhbnGH8K/H7pc8uBTwELgWeBS0gJ9H/yvN4IvCaX
HU3aA54MPAw80r0c8vijgNvzdB4BLgC2L40P4KPAL4EHS8P2a7eM87iPAEvzMp4F7NlQ75Rc71Ok
xK8my2gI8DwwLPf/PbAe2CX3nwd8LXfPBL4FzM7LZTKwDlibv8MftlinivkprVMXlJb1OXlZv0hq
eWj3vQ8C/g74VV4m84CRVZcbr1zHfj9//0/l9eHdpXEz83K7LtdzJ7Bvp3/HA+HV8QD8qvhFwYT8
g9+uTZmpvDwp/AWwM7AD6QhjQWncI8Bxufs1wOG5+1+BacDg/Dque4OUNwJvzd0fBH5Wqq/4wZKO
QOcBnwW2B/YBlgFvL8W5Djgpl92xybxcmH/wI/LG5I15PvbPG7W35fg+Tdq4bl+K8Q5SIhgB/BaY
D7yBtBH9X+Afc9nReWP0XeDVwCF5Y9Y9j0cAx5A2dqOB+4CPlWIM4MfAa9mYsMobt1bL+I+Ax4DD
8zx9E7ilod5rgd1IR4OrgQktvvNbgPfk7htIG9yJpXEn5+6ZpOT6przMh+Rhn+9hvSvPz0GknYwP
lZb1AmAkKYn39L1/ClhEagISMA7YvRfLbTwb17HB+Xv/uzytPyJt/A8oze/jpMS+HXAFcGWnf8cD
4eXmo4Fjd+CxiFhf9QMRMSMifhcRL5I2xOMk7ZpHrwMOkrRLRDwZEfNLw18P7B0R6yLi1si/sl44
EhgeEf8UEWsjYhnwbWBSqcztEXFNRGyIiOfLH5b0KlJCOzsiVkXESxFxW56PU4HrIuLHEbEO+DJp
g/TGUhXfjIhHI2IV6Ujnzoj4RUS8AFxNShBln4uIZyNiEXApcFpefvMi4o6IWB8Ry4F/A97S8Nl/
jYgnGucha7WM3wvMiIj5eZ7+FjhW0ujSZ78QEU9FxK+BnwCHNakf4GbgLbn55lDgG7l/COl7uKVU
9gcR8fO8zF9oUV8z8yU9CfwQuJi0jLp9IyJW5Pnv6Xv/MPCZiFgSyd0R8XiT6bVabmXHADuRltPa
iPhfUiI9rVTm6oi4K/9mrqD1MrQSJ4WB43FgWNW2W0mDJH1B0q8kPUPaq4PUPATwHtJh+kOSbpZ0
bB7+JdIe2A2Slkk6dxNi3RvYU9JT3S/SHt3rSmVWtPn8MNKe7K+ajNuT1KQEQERsyHWNKJV5tNT9
fJP+xpOa5VgeytNA0v6SrpX0m7wM/4WNy6/KfLRaxo3zsIb0/Zbn4Tel7ueaxNztZtIe9OGkvfAf
kxLXMcDSho1uu1jbOTwiXhMR+0bEZ/Iyb1ZnT9/7SJp/p41aLbeyPYEVDbE8xKYtQytxUhg4bie1
255UsfzpwImkcwC7kpo/IB22ExFzIuJEYA/gGuC/8vDfRcQnImIfUtv9xyUd38tYV5Da2HcrvXaO
iHeUyrQ7+niMdM5i3ybjHiZtfNLMSCJtbFb1MsaykaXuUXkakNrg7wfGRsQupA2cGj7bcj5aLeMm
8/Bq0pHgpszDbaTmmJOBmyPi3jwP7yAljHax9sUtkst19PS9r6D5d/ryClsvt7KHgZH5qLLbKDZv
PTCcFAaMiHia1FZ7oaSTJA2VNFjSRElfbPKRnUlJ5HFgKGkvFwBJ20t6r6RdcxPMM8CGPO5dkvbL
G9unSSeTN7yi9vbuAn4n6RxJO+ajlv8j6ciK87oBmAF8VdKe+fPHStqBtIF4p6TjJQ0GPpHn87Ze
xlj2D3l5HgycQbrsEtIyfAZYI+lA4C+rVthuGZPOYZwh6bA8T/9CauJa3tvAI+I5Ujv+R9mYBG4j
nahuTAqNHiW1+/eVnr73i4HzJI3N/3M5VNLu5Qp6WG5ld5L2/j+dfwfjgROAK/twfrZJTgoDSER8
hfQfhc+QTj6uAM4k7U01uox0OL2KdCXHHQ3j3w8sz80iU0jt3ABjSVforCEdnVwUET/pZZwvAe8i
teE+SNrzv5h0xFLVJ0nNIXNIV+icT7oKagnwPtLJ2cdIG4ITImJtb2JscDOpyewm4MsRcUMphtNJ
JzC/zcZkUVXTZRwRNwL/QLpK5xHS3vOkVpVUjH8waaPc3b8zLz+f0MwlpLb7pyQ1W4d6pcL3/lVS
Ur+BtLG/hHQ+qFGrdbM8rbWk735ins5FwAci4v7NnY9tXfdVJWbbnHxi90FgcG9O4JttzXykYGZm
BScFMzMruPnIzMwKPlIwM7PCgLuJ1bBhw2L06NGdDsPMbECZN2/eYxExvKdyAy4pjB49mrlz53Y6
DDOzAUXSQz2XcvORmZmVOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkVnBTMzKxQa1KQNEHSEklL
mz3BS9Kukn4o6W5JiyWdUWc8ZmbWXm1JQdIg0sPXJ5Ie+H2apIMain0UuDcixpEeKfgVSdvXFZOZ
mbVX5z+ajyI9I3YZgKQrSY+HvLdUJoCd81O+diI9TMX3tbc+N2/6vE6H0GeOmHxEp0MYUPzd906d
SWEEL3+o90rg6IYyFwCzSM9b3Rk4teFB3ABImgxMBhg1alQtwZptzbaWDaMTYv06faL57cACYE/S
I/wukLRLY6GImB4RXRHRNXx4j/dzMjOzTVRnUlgFjCz175WHlZ0BfD+SpaRHIx5YY0xmZtZGnUlh
DjBW0ph88ngSqamo7NfA8QCSXgccACyrMSYzM2ujtnMKEbFe0pnA9cAgYEZELJY0JY+fBpwHzJS0
CBBwTkQ8VldM27qtpV0Z3LZsVpdan6cQEbOB2Q3DppW6Hwb+uM4YzMysuk6faDYzsy2Ik4KZmRWc
FMzMrOCkYGZmBScFMzMrOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkVnBTMzKzgpGBmZgUnBTMz
KzgpmJlZwUnBzMwKTgpmZlZwUjAzs0KtSUHSBElLJC2VdG6T8Z+StCC/7pH0kqTX1hmTmZm1VltS
kDQIuBCYCBwEnCbpoHKZiPhSRBwWEYcBfwvcHBFP1BWTmZm1V+eRwlHA0ohYFhFrgSuBE9uUPw34
bo3xmJlZD+pMCiOAFaX+lXnYK0gaCkwAvtdi/GRJcyXNXb16dZ8HamZmyZZyovkE4Oetmo4iYnpE
dEVE1/Dhw/s5NDOzbUedSWEVMLLUv1ce1swk3HRkZtZxdSaFOcBYSWMkbU/a8M9qLCRpV+AtwA9q
jMXMzCrYrq6KI2K9pDOB64FBwIyIWCxpSh4/LRc9GbghIp6tKxYzM6umtqQAEBGzgdkNw6Y19M8E
ZtYZh5mZVbOlnGg2M7MtgJOCmZkVnBTMzKzgpGBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUjAz
s4KTgpmZFZwUzMys4KRgZmYFJwUzMys4KZiZWcFJwczMCk4KZmZWqDUpSJogaYmkpZLObVFmvKQF
khZLurnOeMzMrL3anrwmaRBwIfA2YCUwR9KsiLi3VGY34CJgQkT8WtIedcVjZmY9q/NI4ShgaUQs
i4i1wJXAiQ1lTge+HxG/BoiI39YYj5mZ9aDOZzSPAFaU+lcCRzeU2R8YLOmnwM7A1yPisroCmjd9
Xl1V97sjJh/R6RDMbCtUZ1KoOv0jgOOBHYHbJd0REQ+UC0maDEwGGDVqVL8HaWa2raiz+WgVMLLU
v1ceVrYSuD4ino2Ix4BbgHGNFUXE9Ijoioiu4cOH1xawmdm2rs6kMAcYK2mMpO2BScCshjI/AN4s
aTtJQ0nNS/fVGJOZmbVRW/NRRKyXdCZwPTAImBERiyVNyeOnRcR9kn4ELAQ2ABdHxD11xWRmZu3V
ek4hImYDsxuGTWvo/xLwpTrjMDOzavyPZjMzKzgpmJlZocekIOmLknaRNFjSTZJWS3pffwRnZmb9
q8qRwh9HxDPAu4DlwH7Ap+oMyszMOqNKUug+Gf1O4KqIeLrGeMzMrIOqXH10raT7geeBv5Q0HHih
3rDMzKwTejxSiIhzgTcCXRGxDniOV97YzszMtgJVTjQPBf4K+FYetCfQVWdQZmbWGVXOKVwKrCUd
LUC6f9Hna4vIzMw6pkpS2DcivgisA4iI5wDVGpWZmXVElaSwVtKOQABI2hd4sdaozMysI6pcffSP
wI+AkZKuAN4EfLDOoMzMrDPaJgVJAu4H/gQ4htRsdHZ+9oGZmW1l2iaFiAhJsyPiEOC6forJzMw6
pMo5hfmSjqw9EjMz67gq5xSOBt4r6SHgWVITUkTEobVGZmZm/a5KUnh77VGYmdkWocptLh4CdgNO
yK/d8rAeSZogaYmkpZLObTJ+vKSnJS3Ir8/2dgbMzKzvVLnNxdnAFcAe+XW5pL+u8LlBwIXAROAg
4DRJBzUpemtEHJZf/9Sr6M3MrE9VaT76EHB0RDwLIOl84Hbgmz187ihgaUQsy5+7knQjvXs3PVwz
M6tTlauPBLxU6n+Jare5GAGsKPWvzMMavVHSQkn/I+ngpgFIkyXNlTR39erVFSZtZmabosqRwqXA
nZKuzv0nAZf00fTnA6MiYo2kdwDXAGMbC0XEdGA6QFdXV/TRtM3MrEGVE81fBc4AnsivMyLiaxXq
XgWMLPXvlYeV634mItbk7tnAYEnDKsZuZmZ9rMcjBUnHAIsjYn7u30XS0RFxZw8fnQOMlTSGlAwm
Aac31P17wKP5n9NHkZLU45swH2Zm1geqNB99Czi81L+mybBXiIj1ks4ErgcGATMiYrGkKXn8NOAU
0iM+15Me9zkpItw8ZGbWIVWSgsob6ojYIKnK57qbhGY3DJtW6r4AuKBirGZmVrMqVx8tk3SWpMH5
dTawrO7AzMys/1VJClNIj+JclV9HA5PrDMrMzDqjx2agiPgt6SSxmZlt5VoeKUj6iKSxuVuSZuT7
FC2U1PYks5mZDUztmo/OBpbn7tOAccA+wMeBr9cblpmZdUK7pLA+Itbl7ncBl0XE4xFxI/Dq+kMz
M7P+1i4pbJD0eklDgOOBG0vjdqw3LDMz64R2J5o/C8wl/fFsVkQsBpD0FnxJqpnZVqllUoiIayXt
DewcEU+WRs0FTq09MjMz63dtL0mNiPXAkw3Dnq01IjMz65gqf14zM7NthJOCmZkVKt3YTtIIYO9y
+Yi4pa6gzMysM6o8T+F80onle9n4WM4AnBTMzLYyVY4UTgIOiIgX6w7GzMw6q9Kts4HBdQdiZmad
V+VI4TlggaSbgOJoISLOqi0qMzPriCpHCrOA84DbgHmlV48kTZC0RNJSSee2KXekpPWSTqlSr5mZ
1aPK8xS+I2l7YP88aEnpRnktSRoEXAi8DVgJzJE0KyLubVLufOCG3gZvZmZ9q8cjBUnjgV+SNvAX
AQ9I+oMKdR8FLI2IZRGxFrgSOLFJub8Gvgf8tmrQZmZWjyrnFL4C/HFELAGQtD/wXeCIHj43AlhR
6l9JepRnIf//4WTgD4EjW1UkaTL5EaCjRo2qELKZmW2KKucUBncnBICIeIC+uxrpa8A5EbGhXaGI
mB4RXRHRNXz48D6atJmZNapypDBX0sXA5bn/vaQ7pfZkFTCy1L9XHlbWBVwpCWAY8A5J6yPimgr1
m5lZH6uSFP4S+CjQfQnqraRzCz2ZA4yVNIaUDCYBp5cLRMSY7m5JM4FrnRDMzDqnytVHLwJfza/K
ImK9pDOB60kP6pkREYslTcnjp21CvGZmVqOWSUHSf0XEn0laRLrX0ctExKE9VR4Rs4HZDcOaJoOI
+GCP0ZqZWa3aHSmcnd/f1R+BmJlZ57W8+igiHsmdjwErIuIhYAdgHPBwP8RmZmb9rMolqbcAQ/J/
Cm4A3g/MrDMoMzPrjCpJQRHxHPAnwEUR8afAwfWGZWZmnVApKUg6lvT/hOvysEH1hWRmZp1SJSl8
DPhb4Op8Sek+wE/qDcvMzDqhyv8UbgZuLvUvY+Mf2czMbCvS7n8KX4uIj0n6Ic3/p/DuWiMzM7N+
1+5I4d/z+5f7IxAzM+u8lkkhIrqfrjYXeL77Tqb5oTg79ENsZmbWz6qcaL4JGFrq3xG4sZ5wzMys
k6okhSERsaa7J3cPbVPezMwGqCpJ4VlJh3f3SDoCeL6+kMzMrFOqPE/hY8BVkh4GBPwecGqtUZmZ
WUdU+Z/CHEkHAgfkQUsiYl29YZmZWSf02HwkaShwDnB2RNwDjJbk22mbmW2FqpxTuBRYCxyb+1cB
n68tIjMz65gqSWHfiPgisA4g3zFVVSqXNEHSEklLJZ3bZPyJkhZKWiBprqQ39yp6MzPrU1VONK+V
tCP5VheS9gVe7OlD+U9uFwJvA1YCcyTNioh7S8VuAmZFREg6FPgv4MBezoOZmfWRKkcK/wj8CBgp
6QrShvzTFT53FLA0IpZFxFrgSuDEcoGIWBMR3fdVejVN7rFkZmb9p+2RgiQB95MesHMMqdno7Ih4
rELdI4AVpf6VwNFNpnEy8K/AHsA7W8QxGZgMMGrUqAqTNjOzTdH2SCHvxc+OiMcj4rqIuLZiQqgs
Iq6OiAOBk4DzWpSZHhFdEdE1fPjwvpy8mZmVVGk+mi/pyE2oexUwstS/Vx7WVETcAuwjadgmTMvM
zPpAlaRwNHCHpF/lK4UWSVpY4XNzgLGSxkjaHpgEzCoXkLRfbqIi30pjB+Dx3s2CmZn1lSpXH719
UyqOiPWSzgSuJz3TeUZ+nOeUPH4a8B7gA5LWke6ndGrpxLOZmfWzdk9eGwJMAfYDFgGXRMT63lQe
EbOB2Q3DppW6zwfO702dZmZWn3bNR98BukgJYSLwlX6JyMzMOqZd89FBEXEIgKRLgLv6JyQzM+uU
dkcKxZ1Qe9tsZGZmA1O7I4Vxkp7J3QJ2zP0i/YVhl9qjMzOzftUyKUTEoP4MxMzMOq/K/xTMzGwb
4aRgZmYFJwUzMys4KZiZWcFJwczMCk4KZmZWcFIwM7OCk4KZmRWcFMzMrOCkYGZmBScFMzMr1JoU
JE2QtETSUknnNhn/3tIjPm+TNK7OeMzMrL3akoKkQcCFpAf0HAScJumghmIPAm/Jz204D5heVzxm
ZtazOo8UjgKWRsSyiFgLXAmcWC4QEbdFxJO59w5grxrjMTOzHtSZFEYAK0r9K/OwVj4E/E+zEZIm
S5orae7q1av7MEQzMyvbIk40S/pDUlI4p9n4iJgeEV0R0TV8+PD+Dc7MbBvS7slrm2sVMLLUv1ce
9jKSDgUuBiZGxOM1xmNmZj2o80hhDjBW0hhJ2wOTgFnlApJGAd8H3h8RD9QYi5mZVVDbkUJErJd0
JnA9MAiYERGLJU3J46cBnwV2By6SBLA+IrrqisnMzNqrs/mIiJgNzG4YNq3U/WHgw3XGYGZm1W0R
J5rNzGzL4KRgZmYFJwUzMys4KZiZWcFJwczMCk4KZmZWcFIwM7OCk4KZmRWcFMzMrOCkYGZmBScF
MzMrOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkVnBTMzKxQa1KQNEHSEklLJZ3bZPyBkm6X9KKk
T9YZi5mZ9ay2x3FKGgRcCLwNWAnMkTQrIu4tFXsCOAs4qa44zMysujqPFI4ClkbEsohYC1wJnFgu
EBG/jYg5wLoa4zAzs4rqTAojgBWl/pV5WK9JmixprqS5q1ev7pPgzMzslQbEieaImB4RXRHRNXz4
8E6HY2a21aozKawCRpb698rDzMxsC1VnUpgDjJU0RtL2wCRgVo3TMzOzzVTb1UcRsV7SmcD1wCBg
RkQsljQlj58m6feAucAuwAZJHwMOiohn6orLzMxaqy0pAETEbGB2w7Bppe7fkJqVzMxsCzAgTjSb
mVn/cFIwM7OCk4KZmRWcFMzMrOCkYGZmBScFMzMrOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkV
nBTMzKzgpGBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlaoNSlImiBpiaSlks5tMl6SvpHHL5R0eJ3x
mJlZe7UlBUmDgAuBicBBwGmSDmooNhEYm1+TgW/VFY+ZmfWsziOFo4ClEbEsItYCVwInNpQ5Ebgs
kjuA3SS9vsaYzMysje1qrHsEsKLUvxI4ukKZEcAj5UKSJpOOJADWSFrSt6H2uWHAY7VO4f/WWvvm
qH/eYduef8/7lmggrPd7VylUZ1LoMxExHZje6TiqkjQ3Iro6HUcnbMvzDtv2/Hvet455r7P5aBUw
stS/Vx7W2zJmZtZP6kwKc4CxksZI2h6YBMxqKDML+EC+CukY4OmIeKSxIjMz6x+1NR9FxHpJZwLX
A4OAGRGxWNKUPH4aMBt4B7AUeA44o654+tmAaeqqwbY877Btz7/nfSugiOh0DGZmtoXwP5rNzKzg
pGBmZgUnBTN7BUkflHRBD2WmSvpkjTH8XV11W2tOCpmkNZ2OYUskabmkYTXVvYOkGyUtkHTqZtY1
XtIb+yq2NtNpuTwkjZZ0T43TPqnJrWK2ZrUmhfx9nV7q75L0jTqnWZpubevJ5nJS6EeS+vXPgvlS
3y35O34DQEQcFhH/WeUD+Z5azYwHNikp9Pf3shlOIt1HbLNJukbSPEmL8x0DkHSGpAck3QW8qVT2
BEl3SvpFTuKvK1U1TtLtkn4p6SO5vCR9SdI9khZ1J/w2w18v6Za8c3CPpOMkfQHYMQ+7oi/muYnR
QJEUImJuRJxV07QGjojwK12BtabJsNHA/wILgZuAUXn4vsAdwCLg880+W6pjPHAr6T8ZD+Rh7wPu
AhYA/wYMysM/BDyQx30buGAT5mM0sAS4DFgMXArMzd2fK5VbDnwOmJ/n48A8fHfghlz+YuAhYFge
93Hgnvz6WGl69wMzc+xXAG8Ffg78EjiqRZx7kC5Ffjovh32B44Ff5HhmADuUYj0/xzoJOAu4N38v
V+YYfkP64+MC4LiGaf1DXiY/A74LfBL4KfC1vGw+AZwA3JmnfyPwup6WR4tlf39eBvcB/w0MzeNa
zVur4V8ozeOXSQnvCeDB7uW1mev7a/P7jvn7HAH8GhgObJ+/vwtymdew8UrFDwNfyd1TgbtzHcNI
t6zZE3gP8GPSpeivy/W+vs3wTwB/n+scBOzc6jdZYb6+AHy01D8V+BTwpTyfi4BT87g72Lj+/Q3p
t3pt6XMz8nqyDDir3frUJp798vp0N2n93TevJ/eU1plb87j5wBvz8NcDt+TY7gGOy8tmZmk+/qaW
bWEdlQ7EV7MVEPgh8Oe5+y+Aa3L3tcBpuXtKu5U3r2jPAmNy/+/negfn/ouAD+Qf03LgtcDgvKJs
alLYAByT+7t//IPyCn5o7l8O/HXu/ivg4tz9DeCzufudQJB+8EfkFfHVwE6kjeQb8vTWA4eQjjzn
5R+TSDc8vKaHZdP9IxxC2qjsn/svY2PiWQ58uvS5h9m48dwtv09t9uMEjsw/rCHAzqRE1Z0ULiqV
a7Xha7o82iz7AN6U+2fkaTWdtzbDdydtdNQwjzOBU/pofZ9K2lDdTdownku6OWX3+LPYmBQOISXG
RTmuH5Xq+KfSZy4jHc38P+AvSsP/HXh3m+F/QNpBmAoc1u43WWG+3gDcXOq/F/hzmiejYv1rsj5O
BW4DdiCt/4+TfpdN16c28dwJnFxax4fy8qQwFBiSu8cCc3P3KxIl6Tf441Ldu/XFutD42pKbFrYE
xwL/kbv/HXhzafhVufs/Gj/UxF0R8WDuPp705c6RtCD370O6q+zNEfFERKwr1b8pHop011mAP5M0
n7Q3ejAvb374fn6fR1pRIf1ALweIiOuAJ/PwNwNXR8SzEbEmf/a4PO7BiFgUERtIyeKmSGvtolK9
PTkg1/NA7v9OjqVbuXlpIXCFpPeRElI7bwJ+EBEvRMTvSAm5WZ17AddLWkTaszw4D2+1PFpZERE/
z92Xk5Zbq3lrNfxp4AXgEkl/QvpjZ5+RNJ50NHdsRIwjrRv3t/nIN0kJ4hDSLdmGlMY1/tGp1398
iohbSPO9Cpgp6QO9raNU1y+APSTtKWkc6fs6DPhuRLwUEY8CN5M27j25LiJejIjHgN+SEkq79ell
JO0MjIiIq3NsL0RE43c5GPh2Xu+uYuPvcw5whqSpwCF5WsuAfSR9U9IE4JkK89BrTgr949lSt4Dv
RGpHPywiDoiIqXVMT9IY0p7q8RFxKHAdL/9Bv5jfX2Lz/t3+Yql7Q6l/w2bWW1Zehu8kPavjcFJy
3dRplOtst+Hrjb7YSK4n7ST8N/Au4EebGEsruwJPRsRzkg4EjiE1Ab1F0u6SBgN/2lC++55kf95Q
14mShkjanbSnPYd0lHuqpEGShpM2+He1Gi5pb+DRiPg2qYmu+2Fb63IsvXUVcApwKi9P/L1VXq83
9zfSyt8AjwLjgC5S013TRBkRT+ZyPyW1UFxcQzxOCj24jdSGDfBe0koNqS3yPbl7UuOHenATcIqk
PQAkvTbp3Vs9AAAC00lEQVT/KOaQfpSvyRu597SrpKJdSBu+p/PJwYkVPnML+eSbpImkZhVI836S
pKGSXg2czMbl0ReWAKMl7Zf730/ao3uZfOJ8ZET8BDiHtMHaCfgd6RC70c+BE/KGayfSRraZVhu+
VsujlVGSjs3dp5PanVvNW9PhOc5dI2I2aaMxLo9vNY+99SNgO0n3kdrg7yDdrn4qcDtpmd1XKj8V
uErSPF55e+iFwE9yHedFxMPA1Xn43aRzcp+OiN+0GT4euFvSL0gb8q/nuqcDCzfhRPN/kn6Xp5AS
RKsktSnLs+r6RN67XynpJCiuthvaUGxX4JF8lP1+UlMRzRJlvurtVRHxPeAzbEyefauONqmB+CLt
1a4svT5Ouv94sxPNY0lthQuBLwKr2tQ7nlK7ZR52KqldciGp6aa7/X8yqY3yTlJTwj9vwnyMJrdX
5v6ZpBPAN5GafD6Yhy9n4wnkLuCnubt8YvXbVDvR3Di9U5qN62nZ0P5Ec3cMg0kb2kU5jnPz8P3z
8mx2onlqXga3At8DPkLa2+oqlTmRdHg+j3RSssfl0WLZ309qNrovT6vXJ5pJ7d135flZxMbzWm8i
tZH/gs080by1v/Jy+0nuFs1PNA8m/b7vpvmJ5k+W6rsHGN1qfWoTx1g2bkPmkZqKi99FHt+dKM8n
n0ch7Zjck7/rW4ExpJ2D+XkdXwBMrGPZ+d5HmyBn++cjIiRNIp10bnyq3KbUu1NErMlHCleTbiJ4
9ebWu60rLdehpD3/yRExv9Nx2cC0ta9PA+X67C3NEcAFkgQ8RboyqS9MlfRWUnv2DcA1fVTvtm56
/tPXENL5nK3mB2wdsVWvTz5S6COSDiFdoVT2YkQ0PoJ0myPpDODshsE/j4iPdiKezZVPqt7UZNTx
EfF4f8djnSfpQkp/+Mu+HhGXdiKezeGkYGZmBV99ZGZmBScFMzMrOCmYmVnBScHMzAr/H8/WKzTT
bfW0AAAAAElFTkSuQmCC
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[118]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_axis</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">classifier_names</span><span class="p">))</span>
<span class="n">plt</span><span class="o">.</span><span class="n">bar</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span><span class="n">recallray</span><span class="p">,</span> <span class="n">alpha</span><span class="o">=</span><span class="mf">0.4</span><span class="p">,</span><span class="n">color</span><span class="o">=</span><span class="s1">&#39;brown&#39;</span><span class="p">,</span><span class="n">ecolor</span><span class="o">=</span><span class="s1">&#39;black&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xticks</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span> <span class="n">classifier_names</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s1">&#39;recall Scores&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s1">&#39;Classifier comparison wrt Recall&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[119]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_axis</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">classifier_names</span><span class="p">))</span>
<span class="n">plt</span><span class="o">.</span><span class="n">bar</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span><span class="n">f1ray</span><span class="p">,</span> <span class="n">alpha</span><span class="o">=</span><span class="mf">0.6</span><span class="p">,</span><span class="n">color</span><span class="o">=</span><span class="s1">&#39;orange&#39;</span><span class="p">,</span><span class="n">ecolor</span><span class="o">=</span><span class="s1">&#39;black&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xticks</span><span class="p">(</span><span class="n">y_axis</span><span class="p">,</span> <span class="n">classifier_names</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s1">&#39;f1 Scores&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s1">&#39;Classifier comparison wrt f1&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
IXXqDGg0xgAAAABJRU5ErkJggg==
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[120]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Some fine REFINEMENTS to GBboost,Rfforest,and Adaboost</span>
<span class="c1">#PERFROM GRIDSEARCH CV on RF,GB and Adaboost to find best parameter values on 10 fold cross validation set</span>
<span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">classification_report</span>
<span class="kn">from</span> <span class="nn">sklearn.grid_search</span> <span class="k">import</span> <span class="n">GridSearchCV</span>
<span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">make_scorer</span>
<span class="kn">from</span> <span class="nn">sklearn.metrics</span> <span class="k">import</span> <span class="n">fbeta_score</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">RandomForestClassifier</span>
<span class="kn">from</span> <span class="nn">sklearn.ensemble</span> <span class="k">import</span> <span class="n">AdaBoostClassifier</span>


<span class="n">parameters_ada</span> <span class="o">=</span><span class="p">{</span><span class="s1">&#39;n_estimators&#39;</span> <span class="p">:[</span><span class="mi">15</span><span class="p">,</span><span class="mi">25</span><span class="p">,</span><span class="mi">50</span><span class="p">],</span>
            <span class="p">}</span>



<span class="n">clf</span> <span class="o">=</span> <span class="n">GridSearchCV</span><span class="p">(</span><span class="n">AdaBoostClassifier</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">parameters_ada</span><span class="p">,</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;accuracy&#39;</span><span class="p">)</span>
<span class="n">clf</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span> <span class="n">y_train</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Best parameters for Adaboost:&quot;</span><span class="p">,</span><span class="n">clf</span><span class="o">.</span><span class="n">best_params_</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Best parameters for Adaboost: {&#39;n_estimators&#39;: 15}
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[121]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">parameters_boost</span> <span class="o">=</span><span class="p">{</span><span class="s1">&#39;n_estimators&#39;</span> <span class="p">:[</span><span class="mi">15</span><span class="p">,</span><span class="mi">25</span><span class="p">,</span><span class="mi">50</span><span class="p">],</span>
             <span class="s1">&#39;min_samples_split&#39;</span> <span class="p">:[</span><span class="mi">3</span><span class="p">,</span><span class="mi">10</span><span class="p">,</span><span class="mi">15</span><span class="p">]</span>
<span class="p">}</span>

<span class="n">clf00</span> <span class="o">=</span> <span class="n">GridSearchCV</span><span class="p">(</span><span class="n">GradientBoostingClassifier</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">param_grid</span><span class="o">=</span><span class="n">parameters_boost</span><span class="p">,</span> <span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;accuracy&#39;</span><span class="p">)</span>
<span class="n">clf00</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Best parameters for GradeintBoosting:&quot;</span><span class="p">,</span><span class="n">clf00</span><span class="o">.</span><span class="n">best_params_</span><span class="p">)</span>


<span class="n">clf001</span> <span class="o">=</span> <span class="n">GridSearchCV</span><span class="p">(</span><span class="n">RandomForestClassifier</span><span class="p">(</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">param_grid</span><span class="o">=</span><span class="n">parameters_boost</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;accuracy&#39;</span><span class="p">)</span>
<span class="n">clf001</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Best parameters for RandomForest:&quot;</span><span class="p">,</span><span class="n">clf001</span><span class="o">.</span><span class="n">best_params_</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Best parameters for GradeintBoosting: {&#39;min_samples_split&#39;: 15, &#39;n_estimators&#39;: 50}
Best parameters for RandomForest: {&#39;min_samples_split&#39;: 15, &#39;n_estimators&#39;: 50}
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[195]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Use the above parameter values for our Weighted voting CLassifier</span>

<span class="c1">#First we have to calibrate our classsifers</span>

<span class="c1">#Isotonic claibration</span>
<span class="kn">from</span> <span class="nn">sklearn.calibration</span> <span class="k">import</span> <span class="n">CalibratedClassifierCV</span>
<span class="n">clfvc1</span> <span class="o">=</span> <span class="n">RandomForestClassifier</span><span class="p">(</span><span class="n">n_estimators</span><span class="o">=</span><span class="mi">50</span><span class="p">,</span><span class="n">min_samples_split</span><span class="o">=</span><span class="mi">15</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clfvc2</span><span class="o">=</span><span class="n">AdaBoostClassifier</span><span class="p">(</span><span class="n">n_estimators</span><span class="o">=</span><span class="mi">15</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clfvc3</span><span class="o">=</span><span class="n">GradientBoostingClassifier</span><span class="p">(</span><span class="n">n_estimators</span><span class="o">=</span><span class="mi">50</span><span class="p">,</span><span class="n">min_samples_split</span><span class="o">=</span><span class="mi">15</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf_isotonic1</span> <span class="o">=</span> <span class="n">CalibratedClassifierCV</span><span class="p">(</span><span class="n">clfvc1</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s1">&#39;isotonic&#39;</span><span class="p">,</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf_isotonic2</span> <span class="o">=</span> <span class="n">CalibratedClassifierCV</span><span class="p">(</span><span class="n">clfvc2</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s1">&#39;isotonic&#39;</span><span class="p">,</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">clf_isotonic3</span> <span class="o">=</span> <span class="n">CalibratedClassifierCV</span><span class="p">(</span><span class="n">clfvc3</span><span class="p">,</span> <span class="n">method</span><span class="o">=</span><span class="s1">&#39;isotonic&#39;</span><span class="p">,</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[185]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Inputing the istonic calibration to voting classifier with weights.</span>
<span class="kn">import</span> <span class="nn">time</span>
<span class="n">t0</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">clock</span><span class="p">()</span>
<span class="n">clfvc</span> <span class="o">=</span> <span class="n">VotingClassifier</span><span class="p">(</span><span class="n">estimators</span><span class="o">=</span><span class="p">[(</span><span class="s1">&#39;rf&#39;</span><span class="p">,</span><span class="n">clf_isotonic1</span><span class="p">),(</span><span class="s1">&#39;ab&#39;</span><span class="p">,</span> <span class="n">clf_isotonic2</span><span class="p">),(</span><span class="s1">&#39;gb&#39;</span><span class="p">,</span><span class="n">clf_isotonic3</span><span class="p">)],</span><span class="n">voting</span><span class="o">=</span><span class="s1">&#39;soft&#39;</span><span class="p">,</span><span class="n">weights</span><span class="o">=</span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">])</span>
<span class="n">clfvc</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[185]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>VotingClassifier(estimators=[(&#39;rf&#39;, CalibratedClassifierCV(base_estimator=RandomForestClassifier(bootstrap=True, class_weight=None, criterion=&#39;gini&#39;,
            max_depth=None, max_features=&#39;auto&#39;, max_leaf_nodes=None,
            min_impurity_decrease=0.0, min_impurity_split=None,
            min_samples_leaf=1, m..., subsample=1.0, verbose=0,
              warm_start=False),
            cv=10, method=&#39;isotonic&#39;))],
         flatten_transform=None, n_jobs=1, voting=&#39;soft&#39;,
         weights=[1, 1, 1])</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[186]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">y_predvc</span> <span class="o">=</span> <span class="n">clfvc</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_vciso</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predvc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[187]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">precision_vciso</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predvc</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[188]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Results of weighted voting classifer</span>
<span class="n">y_predvc</span> <span class="o">=</span> <span class="n">clfvc</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_vciso</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predvc</span><span class="p">)</span>
<span class="n">precision_vciso</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predvc</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_vciso</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predvc</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_vciso</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_predvc</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_vciso</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_vciso</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_vciso</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_vciso</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Training_time:&#39;</span><span class="p">,</span><span class="n">time</span><span class="o">.</span><span class="n">clock</span><span class="p">()</span> <span class="o">-</span> <span class="n">t0</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.821666666667
Precision: 0.805790548828
Recall: 0.821666666667
f1_score: 0.800497169577
Training_time: 59.46775733333334
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[193]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Training just the Gradient Boost(clfvc3) with tuned parameters from above</span>
<span class="n">t1</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">clock</span><span class="p">()</span>
<span class="n">clfvc3</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">X_train</span><span class="p">,</span><span class="n">y_train</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[193]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>GradientBoostingClassifier(criterion=&#39;friedman_mse&#39;, init=None,
              learning_rate=0.1, loss=&#39;deviance&#39;, max_depth=3,
              max_features=None, max_leaf_nodes=None,
              min_impurity_decrease=0.0, min_impurity_split=None,
              min_samples_leaf=1, min_samples_split=15,
              min_weight_fraction_leaf=0.0, n_estimators=50,
              presort=&#39;auto&#39;, random_state=10, subsample=1.0, verbose=0,
              warm_start=False)</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[194]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#results of Tuned Gradient Boosting classifer</span>
<span class="n">y_predgb2</span> <span class="o">=</span> <span class="n">clfvc3</span><span class="o">.</span><span class="n">predict</span><span class="p">(</span><span class="n">X_test</span><span class="p">)</span>
<span class="n">accuracy_gb2</span><span class="o">=</span><span class="n">accuracy_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predgb2</span><span class="p">)</span>
<span class="n">precision_gb2</span><span class="o">=</span><span class="n">precision_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predgb2</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">recall_gb2</span><span class="o">=</span><span class="n">recall_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span> <span class="n">y_predgb2</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="n">f1_gb2</span><span class="o">=</span><span class="n">f1_score</span><span class="p">(</span><span class="n">y_test</span><span class="p">,</span><span class="n">y_predgb2</span><span class="p">,</span><span class="n">average</span><span class="o">=</span><span class="s1">&#39;weighted&#39;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;accuracy:&quot;</span><span class="p">,</span> <span class="n">accuracy_gb2</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span> <span class="n">precision_gb2</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span> <span class="n">recall_gb2</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;f1_score:&#39;</span><span class="p">,</span><span class="n">f1_gb2</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Training_time:&#39;</span><span class="p">,</span><span class="n">time</span><span class="o">.</span><span class="n">clock</span><span class="p">()</span> <span class="o">-</span> <span class="n">t1</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>accuracy: 0.822888888889
Precision: 0.807469736307
Recall: 0.822888888889
f1_score: 0.801832784112
Training_time: 1.9779253333335873
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[196]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#FINAL EVALUATION USING Stratified 10-fold CV on VC</span>
<span class="kn">from</span> <span class="nn">sklearn.model_selection</span> <span class="k">import</span> <span class="n">cross_val_score</span>
<span class="c1">#accuracy</span>
<span class="n">scores</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">clfvc3</span><span class="p">,</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">scores</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[196]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.82220287299291184</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[197]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">sklearn.model_selection</span> <span class="k">import</span> <span class="n">cross_val_score</span>
<span class="c1">#f1</span>
<span class="n">scores1</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">clfvc3</span><span class="p">,</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;f1_weighted&#39;</span><span class="p">)</span>
<span class="n">scores1</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[197]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.80021882447113324</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[198]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Precision</span>
<span class="n">scores2</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">clfvc3</span><span class="p">,</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;precision_weighted&#39;</span><span class="p">)</span>
<span class="n">scores2</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[198]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.80645997468495467</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[199]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Recall</span>
<span class="n">scores3</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">clfvc3</span><span class="p">,</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;recall_weighted&#39;</span><span class="p">)</span>
<span class="n">scores3</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[199]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.82220287299291184</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[200]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#corss validated final results of tuned Gradient Boosting</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Accuracy:&quot;</span><span class="p">,</span><span class="n">scores</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span><span class="n">scores2</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span><span class="n">scores3</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;F1:&quot;</span><span class="p">,</span><span class="n">scores1</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Accuracy: 0.822202872993
Precision: 0.806459974685
Recall: 0.822202872993
F1: 0.800218824471
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[260]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#lets crossvalidate log regression </span>
<span class="c1">#f1</span>
<span class="kn">import</span> <span class="nn">warnings</span>
<span class="n">warnings</span><span class="o">.</span><span class="n">filterwarnings</span><span class="p">(</span><span class="s2">&quot;ignore&quot;</span><span class="p">)</span>
<span class="n">scores4</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">LogisticRegression</span><span class="p">(</span><span class="n">C</span><span class="o">=</span><span class="mf">0.8</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;f1_weighted&#39;</span><span class="p">)</span>
<span class="n">scores4</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[260]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.68193712829259523</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[261]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#accuracy</span>
<span class="n">scores5</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">LogisticRegression</span><span class="p">(</span><span class="n">C</span><span class="o">=</span><span class="mf">0.8</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
<span class="n">scores5</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[261]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.77876670255926317</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[262]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#precision </span>
<span class="n">scores6</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">LogisticRegression</span><span class="p">(</span><span class="n">C</span><span class="o">=</span><span class="mf">0.8</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;precision_weighted&#39;</span><span class="p">)</span>
<span class="n">scores6</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[262]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.60652374650316576</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[263]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Recall</span>
<span class="n">scores7</span> <span class="o">=</span> <span class="n">cross_val_score</span><span class="p">(</span><span class="n">LogisticRegression</span><span class="p">(</span><span class="n">C</span><span class="o">=</span><span class="mf">0.8</span><span class="p">,</span><span class="n">random_state</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="n">credit</span><span class="o">.</span><span class="n">drop</span><span class="p">(</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">,</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> <span class="n">credit</span><span class="p">[</span><span class="s1">&#39;default.payment.next.month&#39;</span><span class="p">],</span><span class="n">cv</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span><span class="n">scoring</span><span class="o">=</span><span class="s1">&#39;recall_weighted&#39;</span><span class="p">)</span>
<span class="n">scores7</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[263]:</div>


<div class="output_text output_subarea output_execute_result">
<pre>0.77876670255926317</pre>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[264]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Accuracy:&quot;</span><span class="p">,</span><span class="n">scores5</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Precision:&quot;</span><span class="p">,</span><span class="n">scores6</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Recall:&quot;</span><span class="p">,</span><span class="n">scores7</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;F1:&quot;</span><span class="p">,</span><span class="n">scores4</span><span class="o">.</span><span class="n">mean</span><span class="p">())</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Accuracy: 0.778766702559
Precision: 0.606523746503
Recall: 0.778766702559
F1: 0.681937128293
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[254]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#Free form visualization of all metrics of Gradient boosting(final model) and Log_regression(benchmark model)</span>
<span class="kn">import</span> <span class="nn">seaborn</span> <span class="k">as</span> <span class="nn">sns</span>
<span class="n">all_scores</span><span class="o">=</span><span class="p">[]</span>
<span class="n">all_scores</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">scores</span><span class="p">)</span>
<span class="n">all_scores</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">scores2</span><span class="p">)</span>
<span class="n">all_scores</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">scores3</span><span class="p">)</span>
<span class="n">all_scores</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">scores1</span><span class="p">)</span>
<span class="n">eval1</span><span class="o">=</span><span class="p">[]</span>
<span class="n">eval1</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;Accuracy&#39;</span><span class="p">)</span>
<span class="n">eval1</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;Precision&#39;</span><span class="p">)</span>
<span class="n">eval1</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;Recall&#39;</span><span class="p">)</span>
<span class="n">eval1</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;F1&#39;</span><span class="p">)</span>
<span class="n">ax</span><span class="o">=</span><span class="n">sns</span><span class="o">.</span><span class="n">boxplot</span><span class="p">(</span><span class="n">y</span><span class="o">=</span><span class="n">all_scores</span><span class="p">,</span><span class="n">x</span><span class="o">=</span><span class="n">eval1</span><span class="p">,</span><span class="n">palette</span><span class="o">=</span><span class="p">(</span><span class="s2">&quot;RdBu_r&quot;</span><span class="p">),</span><span class="n">linewidth</span><span class="o">=</span><span class="mf">2.0</span><span class="p">,</span><span class="n">width</span><span class="o">=</span><span class="mf">0.6</span><span class="p">)</span>
<span class="c1">#ax.set(ylim=(0.76, 0.82))</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
AAAASUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div>
    </div>
  </div>
</body>
</html>
